Difference between revisions of "WordAutomation/de"

From Lazarus wiki
(Word als OleObjekt)
Line 69: Line 69:
 
<br>
 
<br>
 
--[[User:Olaf|Olaf]] 17:29, 21 September 2012 (UTC)
 
--[[User:Olaf|Olaf]] 17:29, 21 September 2012 (UTC)
[[Category:Tutorials]]
+
 
 +
[[Category:Tutorials/de]]

Revision as of 07:54, 25 September 2012

Windows logo - 2012.svg

Dieser Artikel behandelt ausschließlich Windows.

Siehe auch: Multiplatform Programming Guide/de

Deutsch (de)


Word als OleObjekt

Word lässt sich wie alle MS Office Produkte automatisieren. Im Gegensatz zu den übrigen MS Office Produkten ist es bei der Automatisierung sehr sehr langsam und reagiert sehr ungewohnt.
Wenn man als Automatisierungsobjekt nicht zwingend auf MS Word angewiesen ist, dann sollte man für die Automatisierung MS Excel nehmen.
Für die Oleautomation muss die Unit ComObj eingebunden werden.

Speicherplatz reservieren

var
  varWdApp: OleVariant;


Word OleObjekt erstellen

begin
  ...
  try
    varWdApp := CreateOleObject('Word.Application'); // erstellt das Wordobjekt
  except
    WriteLn('MS Word kann nicht gestartet werden.'); // Fehlerbehandlung
  end;
  ...
end;


Word beenden und Speicher freigeben

begin
  ...
  varWdApp.Quit;
  varWdApp := Unassigned;
  ...
end;


Word Version ermitteln

begin
  ...
  ShowMessage(varWdApp.Version);
  ...
end;


Word: Datei öffnen

begin
  ...
  varWdApp.Documents.Open(strPfad); // öffnet die Worddatei (Pfad: maximal 255 Zeichen, Alphanumerisch)
  ...
end;


Word: Sichtbarkeit steuern

Eine unsichtbare Anwendung verhindert während der Automatisierung das Flackern des Bildschirms.

begin
  ...
  varWdApp.Visible := False;  //macht Word unsichtbar
  varWdApp.Visible := True;   //macht Word sichtbar
  ...
end;



--Olaf 17:29, 21 September 2012 (UTC)