![]() |
worddocument to richedit
wie kann ich ein worddokument in ein richedit kriegen?
viel eher wäre ja dann die frage wie wandel ich ein worddokument zu einem rich text format um? dann kann ich das ganze in ein richedit laden..., oder? das ganze sollte halt nur nicht zu sehen sein. (umwandeln usw.) hat jemand schon mal sowas gemacht und hat ein beispiel für mich? sowas in der art dachte ich... klappt nicht:
Delphi-Quellcode:
begin
if opendialog1.Execute then begin try WordApp := CreateOleObject('Word.Application'); except ShowMessage('Ich würde mal Word installieren :)'); end; WordApp.Documents.Open(Opendialog1.FileName); Doc := WordApp.ActiveDocument; WordApp.visible := false; WordApp.ActiveDocument.SaveAs('c:\temp\test.rtf'); richedit.lines.LoadFromFile('c:\temp\test.rtf'); end; end; das klappt auch nicht...
Delphi-Quellcode:
begin
if opendialog1.Execute then begin try WordApp := CreateOleObject('Word.Application'); except ShowMessage('Could not start MS Word!'); end; WordApp.Documents.Open(Opendialog1.FileName); Doc := WordApp.ActiveDocument; WordApp.visible := false; WordApp.ActiveDocument.SaveAs('c:\temp\test.rtf'); // Evtl Word beenden WordApp.Quit; // Ressourcen Freigeben if WordApp = Unassigned then begin richedit.lines.LoadFromFile('c:\temp\test.rtf'); end; end; end; |
Es reicht nicht, die Dateieindung zu setzen, Du musst Word auch das Format verraten ;-) Bei meinen Word-Komponenten erwartet SaveAs als zweiten Parameter das gewünschte Format. Für RTF ist dieser Parameter wdFormatRTF (Wert: $00000006).
...:cat:... |
|
Welchen Deiner Ansätze nutzt Du? Den ersten oder den zweiten? Du musst Word veranlassen, daß Dokument zu schließen.
Delphi-Quellcode:
...:cat:...
// so, oder so ähnlich
WordApp.ActiveDocument.Close(False); |
Delphi-Quellcode:
den zweiten
WordApp.Quit;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz