![]() |
Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Hallo #,
folgender Code öffnet ein Dokument ReadOnly in Word.
Delphi-Quellcode:
Dummerweise kommt immer noch die Meldung "Dokument speichern?",
FWordApp.Documents.Open(DocTemplate,ConfirmConversions,
ReadOnly,AddToRecentFiles, PasswordDocument,PasswordTemplate, Revert,WritePasswordDocument, WritePasswordTemplate,Format, Encoding, Visible); FWordApp.ActiveDocument.Protect(wdAllowOnlyFormFields,EmptyParam,EmptyParam); FWordApp.DisplayAlerts:= wdAlertsNone; wenn ich Word beende. Den Code habe ich hier noch gefunden, bekomme ihn aber unter Delphi nicht zum Laufen ? ![]() VARIANT vArgsClose; vArgsClose.vt = VT_BOOL; vArgsClose.boolVal = FALSE; spDocuments.Invoke1(L"Close", &vArgsClose, &vResult); Hat jemand noch einen Tip für mich ? Danke Heiko |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Wenn du ein Dokument öffnest, dann solltest du es in einer Zwischenvariable speichern.
Delphi-Quellcode:
var
mydoc : _Document; begin mydoc := FWordApp.Documents.Open(DocTemplate,ConfirmConversions, ReadOnly,AddToRecentFiles, PasswordDocument,PasswordTemplate, Revert,WritePasswordDocument, WritePasswordTemplate,Format, Encoding, Visible); mydoc.Protect(wdAllowOnlyFormFields,EmptyParam,EmptyParam); // ... // Dokument schliesen ohne speichern mydoc.Close({SaveChanges=}False, EmptyParam, EmptyParam); |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Hallo,
mag sein, das Dumme nur, dass immer die "Datei speichern?"-Meldung kommt. Da ich nur ein Dokument öffne, reicht für mich das ActiveDocument. Noch zur Info, es wird eine RTF-Datei geöffnet. Ich sitze seit 07:30 an diesem vermaledeiten Ding ;( Im Netz sehe ich, ich bin nicht der einzige. Probiert habe ich auch das nochmalige Speichern per Save/aveAs,Appliction.Quit usw. Gerade bin ich über eine Seite bei MS gestolpert, die vorschlägt, ein "N" per SendKeys (Visual Basic) an den Dialog zu schicken ... (in diesem Fall ein Drucker-Auswahl-Dialog) Ich glaube, ich weiss jetzt, wo das Problem ist ! Die RTF wird per WPTools erzeugt. Word konvertiert ide Datei und fragt jetzt beim Beenden immer nach "Speichern". Heiko |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
So als Idee,
was passiert wenn Du auf das
Delphi-Quellcode:
verzichtest?
ActiveDocument.Protect
Wenn du eh nicht speichern willst, dann ist es egal was mit dem geöffneten Dok passiert.
Delphi-Quellcode:
könnte vllt. helfen. Word ist ja manchmal recht eigenwillig
ActiveDocument.Close(0)
Gruß K-H |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
DisplayAlerts:= wdAlertsNone;
ist wdAlertsNone = false? vielleicht hilft das.... ActiveDocument.Saved := True |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Oder du speicherst es unter einem temporären Dateinamen und löschst anschliesend diese Datei.
Schade ist nur dass man unter Windows nicht als /dev/null speichern kann. |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Hallo,
in allen Fällen kommt diese däml. Meldung "Wirklich speichern". ActiveDocument.Saved := True probiere ich aus. Das Protect muss drinbleieben, es handelt sich um eine Rechnung. Die darf er drucken. Und erst nach dem Drucken wird die RTF in die DB geschrieben. Er soll nicht mal auf die Idee kommen, dass er die Rechnung "bearbeiten" kann. Danke Heiko |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Hallo,
Delphi-Quellcode:
Wuhaaaaaaaaaaaaa
ActiveDocument.Saved := True
07:30-12:30 wegen einer Zeile !!! 1000 Danke !!! ;) Heiko |
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Zitat:
|
AW: Word OLE ReadOnly, Meldung beim Beenden unterdrücken
Hallo,
um 09:00 hatte ich ja gefragt ... ;) Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:40 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