Hallo erstmal
Kann mir jemand sagen wie ich alle aktiven Anwendungen auslesen und in einer Liste speichern kann???
Danke im voraus
mfg Hurby
Aktive Anwendungen auslesen
Moderator: Moderatoren
Hey Hurby,
Handelt es sich um die aktiven OOo Anwendungen, so zitier ich mal aus meinem neuen Basic-Buch, das diverse Abhandlungen über das Problm enthält:
Dieses Makro listet dir alle aktiven Applikationen im Klartext auf - du brauchst allerdings noch dieses Makro:
Allerdings: Manche Applikationen werden als "unbekannt" ausgegeben (zum Beispiel ein geöffnetes Hilfe-Fenster). Dann kannst du natürlich auch alle aktiven Frames nutzen - und die Titeleigenschaft auslesen:
Und über die Frames (Fenster) hast du dann auch die Möglichkeit, Rückschlüsse zu ziehen. Brauchst du sicher die Applikationen, nimm Makro 1.
Gruss
Thomas
Hmm, ich hoffe, du meinst nur die aktiven OOo Anwendungen? Das geht, wenn du aber alle auf dem Rechner aktiven Anwendungen möchtest - da weiss ich dann nicht weiter...wie ich alle aktiven Anwendungen auslesen ...
Handelt es sich um die aktiven OOo Anwendungen, so zitier ich mal aus meinem neuen Basic-Buch, das diverse Abhandlungen über das Problm enthält:
Code: Alles auswählen
Sub AlleAktivenApplikationen
on error resume next
DIM oComp as object, oDocs as Object, oDoc as Object, s$
GlobalScope.BasicLibraries.LoadLibrary("Tools")
oComp = Stardesktop.getComponents()
oDocs = oComp.createEnumeration()
Do While oDocs.hasmoreElements()
oDoc = oDocs.nextElement()
s = s & getdoctype(oDoc) & chr(10)
loop
msgbox s, 0, "offene Anwendungen"
End Sub
Code: Alles auswählen
function getDocType(optional oDoc) as String
on Error goto Oops
if isMissing(oDoc) then oDoc = ThisComponent
If oDoc.supportsService("com.sun.star.text.TextDocument") Then
getDocType = "Writer Dokument"
ElseIf oDoc.supportsService("com.sun.star.sheet.SpreadsheetDocument") Then
getDocType = "Calc Dokument"
ElseIf oDoc.supportsService("com.sun.star.drawing.DrawingDocument") Then
getDocType = "Draw Dokument"
ElseIf oDoc.supportsService("com.sun.star.presentation.PresentationDocument") Then
getDocType = "Impress Dokument"
ElseIf oDoc.supportsService("com.sun.star.formula.FormulaProperties") Then
getDocType = "Formel Dokument"
ElseIf oDoc.supportsService("com.sun.star.sdb.DatabaseDocument") Then
getDocType = "Datenbank Dokument"
ElseIf oDoc.supportsService("com.sun.star.script.BasicIDE") Then
getDocType = "Basic IDE"
Else
getDocType = "unbekannt"
End if
oops:
if Err <> 0 Then getDocType = "unbekannt"
On error goto 0
end function
Code: Alles auswählen
sub AlleFrames
Dim oFrames as object, oFrame as object, i%, s$
oFrames = StarDesktop.getFrames()
For i = 1 to oFrames.getcount()
oFrame = oFrames.getByIndex(i-1)
s = s & CStr(i-1) & " : " & oFrame.title & CHR$(10)
next
msgbox s, 0, "Alle Frames - Titel"
end sub
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic