Hallo Leute,
Ich bin in unserem Netzwerk gerade über ein Problem gestolpert.
Vor geraumer Zeit habe ich ein Formular mit einem Makro ausgestattet welches Daten in einem Fenster abfragt , einige Daten aus den Benutzerdaten von OO läd und alles zusammen in das Formular einträgt.
Nun kommt leider auf einzelnen Rechner LO zum Einsatz. Die veränderte Befehlsstruktur von LO sorgt nun zu abstürzen des Makros durch unbekannte Befehle.
Meine Frage an euch ist jetzt, ob einer von euch weiß wie ich beim Start von LO/OO erkennen kann welches Office gerade ausgeführt wird.
Auf die Schnelle habe ich dazu nichts im Internet nichts gefunden.
Wäre da sehr Dankbar für jeden Tip !
[gelöst] Libre vs OpenOffice - beim start unterscheiden
Moderator: Moderatoren
-
- ***
- Beiträge: 62
- Registriert: Do, 01.05.2008 11:33
[gelöst] Libre vs OpenOffice - beim start unterscheiden
Zuletzt geändert von der_Zerstreute am Mi, 01.06.2016 12:40, insgesamt 1-mal geändert.
Re: Libre vs OpenOffice - beim start unterscheiden
schau Dir diesen Thread an:
viewtopic.php?t=62130
nicht alle dortigen Eigenschaften (siehe weiter unten im Thread) sind für alle alten Programmversionen verfügbar, aber z.B. "Vendor" funktioniert mindestens bis zurück OOo 3.3.0 (und natürlich für alle neueren OO/LO-Versionen.
Damit geht:
Wobei die Prüfung noch einfacher sein kann da Du ja auch nur auf "" prüfen kannst und weisst wenn das nicht der "Vendor" ist das aktielle Programm OpenOffice.
Gruß
Stephan
viewtopic.php?t=62130
nicht alle dortigen Eigenschaften (siehe weiter unten im Thread) sind für alle alten Programmversionen verfügbar, aber z.B. "Vendor" funktioniert mindestens bis zurück OOo 3.3.0 (und natürlich für alle neueren OO/LO-Versionen.
Damit geht:
Code: Alles auswählen
Sub Main
ov = OfficeVersion()
Select Case ov
Case "Oracle", "Apache Software Foundation"
Msgbox "OO erkannt"
Case "The Document Foundation"
Msgbox "LO erkannt"
Case Else
'Msgbox ov
End Select
End Sub
FUNCTION OfficeVersion() AS STRING
Dim aSettings, aConfigProvider
Dim aParams2(0) As new com.sun.star.beans.PropertyValue
Dim sProvider$, sAccess$
sProvider = "com.sun.star.configuration.ConfigurationProvider"
sAccess = "com.sun.star.configuration.ConfigurationAccess"
aConfigProvider = createUnoService(sProvider)
aParams2(0).Name = "nodepath"
aParams2(0).Value = "/org.openoffice.Setup/Product"
aSettings = aConfigProvider.createInstanceWithArguments(sAccess, aParams2())
OfficeVersion = aSettings.ooVendor
END FUNCTION
Gruß
Stephan
- Dateianhänge
-
- OpenOffice-LibreOffice-unterscheiden.ods
- (9.8 KiB) 140-mal heruntergeladen
-
- ***
- Beiträge: 62
- Registriert: Do, 01.05.2008 11:33
Re: [gelöst] Libre vs OpenOffice - beim start unterscheiden
ah .. ok .. Super !
nun muß ich nur noch rausbekommen durch was ich die nicht mehr funktionierenden Befehle ersetzen muß
Danke
nun muß ich nur noch rausbekommen durch was ich die nicht mehr funktionierenden Befehle ersetzen muß
Danke