Einzelnen Beitrag anzeigen

Tower1234

Registriert seit: 15. Feb 2013
12 Beiträge
 
#1

EOleSysError "Typkonflikt" bei Wordansteuerung

  Alt 1. Mär 2013, 14:11
Hallo,

ich muss gerade ein Projekt von Delphi 7 auf XE2 migrieren. Darin wird (u.a.) ein Word-Dokument erzeugt, das Ganze mit Word 2010.

In Delphi 7 lief alles problemlos; in XE2 macht der folgende Codeabschnitt Probleme:

Code:
(...)
FOffice := CreateOleObject('word.basic');
FOffice.FileNew('XXX.dot');
FOffice.StartOfDocument;
(...)
procedure TWFOffice.MSOfficeBearbeitenErsetzen(SuchString: string; ErsetzString: string;
  Richtung: integer; Einen: boolean);
begin
  if Einen then
    FOffice.EditReplace(Find := SuchString, Replace := ErsetzString, Direction := Richtung, PatternMatch := 0, Format := 0, ReplaceOne := 1) // <-- Fehler
  else
    FOffice.EditReplace(Find := SuchString, Replace := ErsetzString, Direction := Richtung, PatternMatch := 0, Format := 0, ReplaceAll := 1)
end;
Der Code läuft problemlos durch bis zur markierten Zeile.
Wenn die ausgeführt wird, wirft er eine Exception:

Im Projekt XXX ist eine Exception der Klasse EOleSysError mit der Meldung 'Typkonflikt' aufgetreten.

Dieses Problem scheint es immer zu geben, auch mit anderen Aufrufen, wenn ein String an Word übergeben werden soll. Leider hat mir die Erkenntnis aber noch nicht bei der Behebung geholfen...

Danke schon mal für eure Ideen!
  Mit Zitat antworten Zitat