Hallo,
ich möchte prüfen, ob meine Extension installiert ist. Ich setze LibreOffice 5.1 ein.
Meine jetzige Lösung besteht darin, im Ordner C:\Program Files (x86)\LibreOffice 5\share\uno_packages\cache\uno_packages nach dem Ordner MeineExt.oxt zu suchen. Die Suche gilt, wenn die Extension für alle Benutzer installiert wurde.
Installiere ich meine Extension nur für einen Benutzer, landet die Extension in C:\Users\username\AppData\Roaming\LibreOffice\4\user\uno_packages\cache\uno_packages. Warum das hier in einem Ordner 4 landet, verstehe ich gar nicht.
Gibt es hier eine bessere Lösung, um festzustellen, dass meine Extension installiert ist?
Viele Grüße,
Robert
Prüfung, ob Extension installiert ist
Moderator: Moderatoren
Re: Prüfung, ob Extension installiert ist
ja, z.B. über:
http://www.openoffice.org/api/docs/comm ... vider.html
Ich weiß nicht ob es einen noch direkteren Weg gibt, aber pragmatisch funktioniert z.B. bereits:
z.B. am Beispiel meiner Extension mottco:
Die Prüfung auf das Vorhandensein von addon.xcu ist natürlich fakultativ, es geht nur darum auf das Vorhandensein irgendeines Files zu prüfen von dem Du weisst das es Teil DEiner Extension ist.
Gruß
Stephan
http://www.openoffice.org/api/docs/comm ... vider.html
Ich weiß nicht ob es einen noch direkteren Weg gibt, aber pragmatisch funktioniert z.B. bereits:
Code: Alles auswählen
aService = GetDefaultContext().getByName("/singletons/com.sun.star.deployment.PackageInformationProvider")
tmp = aService.getPackageLocation(<Identifier-String Deiner Extension>)
If FileExists(tmp & "/addon.xcu") Then
'Extension ist installiert
End If
Code: Alles auswählen
aService = GetDefaultContext().getByName("/singletons/com.sun.star.deployment.PackageInformationProvider")
tmp = aService.getPackageLocation("org.joesch.mottco")
If FileExists(tmp & "/addon.xcu") Then
Msgbox "mottco ist installiert"
End If
Gruß
Stephan
Re: Prüfung, ob Extension installiert ist
Danke Stephan.
Funktioniert. Muss nur "addons.xcu" heißen.
Gruß,
Robert
Funktioniert. Muss nur "addons.xcu" heißen.
Gruß,
Robert