Seite 1 von 1

Sicherheitseinstellungen

Verfasst: Fr, 16.03.2007 16:24
von gschuckar
Hallo Leute,
für OpenOffice habe ich ein eigenes menu gebaut. Es soll nichts anderes als ein Starter für eigene ooAnwendungen sein. Z.Bsp. starte ich mit dem folgenden Code eine Anwendung, die siche Energie nennt.
---- code ----
Sub main On Error Goto ErrorHandler

if (getEnergyDoc() = false) then
MsgBox "Document konnte nicht geladen werden!"
end if

exit sub

Errorhandler:
MsgBox "Error " & Err & ": " & Error$ & " (line : " & Erl & ")" & "in sub main"
End Sub ' Main


private function getEnergyDoc() as boolean on Error goto ErrorHandler

Dim strLoadURL as String
Dim loadProps(0) as new com.sun.star.beans.PropertyValue
Dim bReturn as Boolean

bReturn = false
' load document hidden
loadProps(0).Name = "Hidden"
'loadProps(0).Value = true ' load document hidden
loadProps(0).Value = false ' load unhide
strLoadURL ="file:///home/gsh/Documents/haus/EnergieVerbrauch.ods"
StarDesktop.loadComponentFromURL(strLoadURL,"_default",0,loadProps())
bReturn = true
getEnergyDoc = bReturn
exit function

ErrorHandler:

getEnergyDoc = bReturn
MsgBox "Error " & Err & ": " & Error$ & " (line : " & Erl & ")" & "in mdlMain.getEnergyDoc"

end function

' ------------ End of modul Main ----------------------
Das funktioniert soweit auch. Allerdings lassen sich die Makros in der Anwendung EnergieVerbrauch.ods auf diese Weise nicht starten. In der Anwendung befindet sich u.A. ein menupunkt, mit dem sich ein Dialog öffnen lässt. Geht nicht. "Aus Sicherheitsgründen lässt sich das Makro nicht ausführen. Überprüfen Sie ihre Sicherheitseinstellung".
Wenn ich die Anwendung über Datei -> Öffnen öffne, dann funktioniert alles wunderbar.
Ich denke, mein Code enthält irgendwo einen fehler. Die Anwendung muss anders gestartet werden.
Kann mir bitte jemand einen Tipp geben?
Danke
Gerd

Verfasst: Sa, 17.03.2007 09:34
von komma4
gib' beim Öffnen des Dokuments noch eine Eigenschaft mit, dass Makros erlaubt sein sollen, dann sollte es klappen:

Code: Alles auswählen

Dim loadProps(1) as new com.sun.star.beans.PropertyValue 
[...]
loadProps(1).Name = "MacroExecutionMode"
loadProps(1).Value = 4  ' always execute - no warning
War es das?

Sicherheitseinstellungen

Verfasst: So, 25.03.2007 12:44
von gschuckar
Hallo Winfried,
leider kann ich erst jetzt antworten. Danke für den Tipp. So gehts ganz wunderbar.
Gruß
Gerd