Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   txt zu doc konvertieren (https://www.delphipraxis.net/158277-txt-zu-doc-konvertieren.html)

Newcomer91 11. Feb 2011 11:28

txt zu doc konvertieren
 
Morgen,

zurzeit arbeite ich an einem älteren Projekt weiter,
und bin nun an einem Punkt angekommen, wo mir Delphi Hilfe und Co
nichtmehr helfen kann.

Ich habe eine bestehende Textdatei welche ich mit klick auf einem
Button öffne - allerdings als .doc Datei!

Ich habe zwar Code finden können, mit welchem man doc in txt wandeln kann,
als ich dann allerdings versuchte, es umzuändern, funktionierte es nichtmehr.
Hier der Quellcode:

Delphi-Quellcode:
procedure TForm1.DOC2Text(InFile, OutFile: OleVariant);
var Filetyp: OleVariant;
begin
  WordApplication1.Connect;
  try
    // Hiermit wird das Word Formular sichtbar (nützlich für Debugging :)
    //WordApplication1.Visible := True;
    WordApplication1.Documents.Open(InFile, EmptyParam, EmptyParam,
    EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
    EmptyParam);
    WordDocument1.ConnectTo(WordApplication1.ActiveDocument);
    Filetyp := wdFormatText;
    WordDocument1.SaveAs(OutFile,Filetyp);
    WordDocument1.Close;
    WordDocument1.Disconnect;
  finally
    WordApplication1.Disconnect;
    WordApplication1.Quit;
  end;
end;
Danke im Vorraus

Luckie 11. Feb 2011 11:30

AW: txt zu doc konvertieren
 
Zitat:

Zitat von Newcomer91 (Beitrag 1081038)
Ich habe zwar Code finden können, mit welchem man doc in txt wandeln kann,
als ich dann allerdings versuchte, es umzuändern, funktionierte es nichtmehr.

Mist, ich brauche dringend eine neue Glaskugel. Meinst du nicht auch, dass es für uns hilfreich wäre uns zu sagen, wie der original Code aussieht, was du geändert hast, was nicht mehr funktioniert und wie sich das äußert? :roll:

Newcomer91 11. Feb 2011 11:35

AW: txt zu doc konvertieren
 
Okay,

Mein Ziel: txt in doc konvertieren // Bei klick auf Button

der code für diese operation:

Delphi-Quellcode:
procedure TForm1.DOC2Text(InFile, OutFile: OleVariant);
var Filetyp: OleVariant;
begin
  WordApplication1.Connect;
  try
    // Hiermit wird das Word Formular sichtbar (nützlich für Debugging :)
    //WordApplication1.Visible := True;
    WordApplication1.Documents.Open(InFile, EmptyParam, EmptyParam,
    EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
    EmptyParam);
    WordDocument1.ConnectTo(WordApplication1.ActiveDocument);
    Filetyp := wdFormatText;
    WordDocument1.SaveAs(OutFile,Filetyp);
    WordDocument1.Close;
    WordDocument1.Disconnect;
  finally
    WordApplication1.Disconnect;
    WordApplication1.Quit;
  end;
end;
Problemstellung: mit diesem code wandelt man doc in txt um. Es soll genau andersherum funktionieren,
als ich es allerdings umschreiben wollte, merkte ich dass es nicht funktioniert.

So hatte ich es umgeändert:

Delphi-Quellcode:
procedure TfrmNotepad.Button1Click(Sender: TObject);
begin
  WordApplication1.Connect;
  try
    WordApplication1.Visible := True;
    WordApplication1.Documents.Open(getOutputFilename);
    WordDocument1.ConnectTo(WordApplication1.ActiveDocument);
    WordDocument1.Close;
    WordDocument1.Disconnect;
  finally
    WordApplication1.Disconnect;
    WordApplication1.Quit;
  end;
end;
Fehlermeldung: 'Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen'

Luckie 11. Feb 2011 11:41

AW: txt zu doc konvertieren
 
Die Fehlermeldung verweist mit Sicherheit auf eine Zeile in deinem Code. Ist es so schwer diese Zeile dann mal mit der entsprechenden Zeile aus dem original Code zu vergleichen?

v2afrank 11. Feb 2011 12:14

AW: txt zu doc konvertieren
 
Der Fehler wird bei Deinem WordApplication1.Documents.Open kommen. Da fehlen Dir ja etliche Parameter

nahpets 11. Feb 2011 12:22

AW: txt zu doc konvertieren
 
Hallo,

ändere doch in der Originalroutine einfach mal das wdFormatText in wdFormatDocument. Weitere Änderungen sollten nicht erforderlich sein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:10 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