Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi2007 auf XE, Wordapplication anders? (https://www.delphipraxis.net/155642-delphi2007-auf-xe-wordapplication-anders.html)

FrankJ28 2. Nov 2010 09:26

Delphi2007 auf XE, Wordapplication anders?
 
Hallo,
ich stelle derzeit eine größere Applikation von D2007 auf XE um. Die üblichen Verdächtigen String/AnsiString etc. sind ausgeräumt. Beim folgenden Code jedoch bin ich schier am Verzweifeln:
Code:
  var FindText : OleVariant;
      ReplText : OleVariant;
      ReplAll : OleVariant;
      Template : OleVariant;
  begin
   FindText:='#'+such+'#';
   ReplAll :=1;
   Template:=EmptyParam;
   case Nr of
    0 : ReplText:=KdDataSet1.FieldByName(such).AsString;
    1 : ReplText:=AkDataSet1.FieldByName(such).AsString;
    2 : ReplText:=ObDataSet1.FieldByName(such).AsString;
    else ReplText:=KundenBox.Selected.SubItems[Nr];
   end;
   WordDocument.Range.Find.ClearFormatting;
   WordDocument.Range.Find.Execute(FindText,EmptyParam,EmptyParam,EmptyParam,
                                   EmptyParam,EmptyParam,EmptyParam,EmptyParam,
           EmptyParam,ReplText,ReplAll,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
XE meldet beim Execute nicht genügend Parameter. Bei mit Verwirrung, da Execute genau 15 Parameter verlang und auch bekommt. Unter D7 und D2007 funktioniert das ganze prima. Jemand eine Idee?
Danke und ciao
Frank

Lemmy 2. Nov 2010 10:13

AW: Delphi2007 auf XE, Wordapplication anders?
 
Hallo,

wenn das unter D7 und D2007 ohne Probleme funktioniert, werden in DXE wohl andere Wrapper-Komponenten (neuere Officeversion) installiert sein. In meinem XE kann ich zwischen Office 2000 und Office XP wählen. Welche hast Du da verwendet?

GRÜß

FrankJ28 2. Nov 2010 10:17

AW: Delphi2007 auf XE, Wordapplication anders?
 
Hallo,
natürlich beides Office XP. Die Codevervollständigung unter XE gibt mir ja auch Recht ...
Ciao
Frank

Lemmy 2. Nov 2010 12:31

AW: Delphi2007 auf XE, Wordapplication anders?
 
Hi,

sehr seltsam... ich habe die beiden Dateien mal angeschaut, die sind identisch, da hat sich also nix verändert. Du kannst mal folgendes versuchen (in einem Testprogramm): Importier dir von deiner installierten MSOffice Version die Wrapper-unit. Lass keine Komponenten erstellen (Delphi - Komponente - Komponente importieren; da dann Typbibliothek importieren, da sollte dann MS Word irgend wo zu finden sein. Wie gesagt, nur WrapperUnit anlegen.

Mit der baust Du dann ein TEstprogramm mit dem Find.Execute nach und schaust ob das funktioniert.

Weiterhin kannst DU mal in der VBA-Hilfe von Word schauen, wie der korrekte Aufruf von Execute bei deiner Office-Version aussieht.

Grüße

FrankJ28 5. Nov 2010 17:54

AW: Delphi2007 auf XE, Wordapplication anders?
 
Hallo,
das Problem hat sich erledigt. Delphi XE entfernt bei der Migration ganz munter erst einmal die Komponenten TWordApplication und TWordDocument. Die Definition blieb erhalten und verweist dann auf "wer weiß was". Das Problem scheint mir das immer wieder Entfernen der Office-Komponenten (Package Office XP). Den Haken merkt sich das XE nicht ....
Danke an alle Mitdenker
Ciao
Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:11 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz