Shell() Funktion

09/04/2008 - 20:13 von Fr | Report spam
[Hier: OpenSuse-10.3 Linux / OpenOffice-2.3.0 ]

Hallo zusammen,

ich würde gerne mit der Shell() Funktion ein
Programm aufrufen, das einen kurzen Text/String
liefert. Wie kann ich es schaffen, dass das
Ergebnis dieses Aufrufs in meinem Dokument
erscheint?

Da ich keine Ahnung von Officesystemen habe,
bitte ich um ein Minimalbeispiel! Die zu
verwendende Shellfunktion könnte z.B. einfach

"Hallo"

liefern, also sowas wie

Shell("echo",?,"Hallo")

und dieses Ergebnis in das gewünschte Feld
schreiben, z.B. so:

das_richtige_Textfeld=Shell("echo",?,"hallo")

Tja, wie man sowas macht, würde ich gerne wissen :)

Danke für eure Tipps,
Frank

PS: Ich brauche das zwar im Writer, aber ich glaube,
dass es für jede OO-Applikation gleich sein müsste?!
 

Lesen sie die antworten

#1 Klaus Reiser
10/04/2008 - 10:42 | Warnen spam
schrieb:

ich würde gerne mit der Shell() Funktion ein
Programm aufrufen, das einen kurzen Text/String
liefert. Wie kann ich es schaffen, dass das
Ergebnis dieses Aufrufs in meinem Dokument
erscheint?


Anderer Lösungsweg für dasselbe Problem?

per Shell den Text in die Zwischenablage und dann per folgendem
aufgezeichnetem Makro ins Dokument an der Cursorposition einfügen.

sub einfügen
rem
rem define variables
dim document as object
dim dispatcher as object
rem -
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem -
dispatcher.executeDispatch(document, ".uno:InsertPara", "", 0, Array())

rem -
dispatcher.executeDispatch(document, ".uno:InsertPara", "", 0, Array())

rem -
dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())


end sub

Gruss
Klaus

Ähnliche fragen