Hallo, in meiner Extension "mottco" (http://calc-info.de/makros.htm#mottco) verwende ich folgendes Makro zum Aufrufen einer PDF-Datei:
Sub hilfe_aufrufen() Dim aService Dim pdf_verzeichnis aService = GetDefaultContext().getByName("/singletons/com.sun.star.deployment.PackageInformationProvider") pdf_verzeichnis = aService.getPackageLocation("org.joesch.mottco") & "/mottco/" If FileExists(ConvertToUrl(pdf_verzeichnis & "mottco_hilfe.pdf")) Then Dim starten as object starten = createUnoService("com.sun.star.system.SystemShellExecute") starten.execute(ConvertToUrl(pdf_verzeichnis & "mottco_hilfe.pdf"), "", 0) Else MsgBox ("Die Hilfedatei wurde nicht gefunden." ,16,"Hilfedatei nicht vorhanden") Exit Sub End If End Sub was bisher (LO bis 6.x) auch immer funktioniert hat. In LO 7.x (getestet in 7.0.1 und 7.1.0) ergibt "starten.execute..." nun jedoch die Fehlermeldung: "file:///E:/LO_710/LibreOfficePortable/App/libreoffice/program/../../../Data/settings/user/uno_packages/cache/uno_packages/lu7860nw7fts.tmp_/mottco_200.oxt konnte nicht gefunden werden [...]" Augenscheinlich ersetzt "com.sun.star.system.SystemShellExecute" das "/../../../" nicht mehr richtig, denn wenn ich testweise den Pfad händisch 'zurechtfummle' klappt es: pdf_verzeichnis = "file:///E:/LO_710/LibreOfficePortable/Data/settings/user/uno_packages/cache/uno_packages/lu7860nw7fts.tmp_/mottco_200.oxt" & "/mottco/" If FileExists(ConvertToUrl(pdf_verzeichnis & "mottco_hilfe.pdf")) Then Dim starten as object starten = createUnoService("com.sun.star.system.SystemShellExecute") starten.execute(ConvertToUrl(pdf_verzeichnis & "mottco_hilfe.pdf"), "", 0) Wohlgemerkt wird aber das "/../../../" in "FileExists( ..." sehr wohl richtig verarbeitet, denn das hier liefert True: aService = GetDefaultContext().getByName("/singletons/com.sun.star.deployment.PackageInformationProvider") pdf_verzeichnis = aService.getPackageLocation("org.joesch.mottco") & "/mottco/" Msgbox FileExists(ConvertToUrl(pdf_verzeichnis & "mottco_hilfe.pdf")) Meinungen? Gruß Jörg -- Liste abmelden mit E-Mail an: discuss+unsubscr...@de.libreoffice.org Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/ Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de Listenarchiv: https://listarchives.libreoffice.org/de/discuss/ Datenschutzerklärung: https://www.documentfoundation.org/privacy