[java] Öffnen eines Files über loadComponentFromUrl: Makro

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Raabun
**
Beiträge: 26
Registriert: So, 27.06.2004 14:13

[java] Öffnen eines Files über loadComponentFromUrl: Makro

Beitrag von Raabun »

Hi Leute,
ich öffne ein File (test.sxw) mit der LoadComponentFrom URL Funktion.
Das funktioniert ohne Probleme. In meinem File ist aber ein Makro integriert.
Diese Makro läßt sich nicht starten. Folgende Fehlermeldung entsteht:

Aus Sicherheitsgründen ist dieses Makro nicht aufführbar.
Für weitere Informationen überprüfen Sie die Sicherheitseinstellungen


Wenn ich das test.sxw direkt vom Desktop öffne gibt es mit dem Makro kein Problem.

Mein Makro:

Code: Alles auswählen

Sub Main
Macro1
End Sub

Sub Macro1
msgbox ("Hallo, Nipfnapf.....",36)
End Sub
Geöffnet wird das File über:

Code: Alles auswählen

PropertyValue[] loadProps = new PropertyValue[2];

loadProps[0] = new PropertyValue();
loadProps[0].Name = "AsTemplate";
loadProps[0].Value = new Boolean(false);
loadProps[1] = new PropertyValue();
loadProps[1].Name = "MacroExecutionMode";
loadProps[1].Value = "ALWAYS_EXECUTE_NO_WARN";
        
// load
return xComponentLoader.loadComponentFromURL(loadUrl, "_blank", 0, loadProps);
Die 2. Property hatte ich auch schon mal entfernt, aber immer das gleiche Ergebniß.

Gruß

Raabun

PS: Es ist für mich wichtig, daß das Makro mit meinem geöffnetem Dokument verbunden ist und nicht mit OpenOffice.org selbst.
Raabun
**
Beiträge: 26
Registriert: So, 27.06.2004 14:13

Beitrag von Raabun »

Noch was komisches:
Ich habe hier im Büro mehrere Rechner laufen.
Das Problem tritt aber nur bei den Rechnern mit der Version 1.1.2 auf. Die Version 1.1.1 verhält sich normal...

Gruß Raabun
Raabun
**
Beiträge: 26
Registriert: So, 27.06.2004 14:13

Beitrag von Raabun »

Als Alleinunterhalter :lol: liefere ich nun noch die Lösung
(B Marcelly aus dem englichem Forum sei Dank)

Code: Alles auswählen

loadProps[0].Value = new Short(com.sun.star.document.MacroExecMode.ALWAYS_EXECUTE_NO_WARN);
Gruß

Raabun
Antworten