Forum: Programmieren allgemein
Delphi
by Delphi.Narium,
26. Jun 2021
Man hat dadurch eigentlich nie ein verlässliches Verhalten zwischen Word und eigenem Programm. Man muss in der Fehlerbehandlung extrem viele potenziell fehlerträchtige Möglichkeiten beachten. Das ist vollumfänglich kaum möglich.
Bezüglich der Eigensteuerung aus dem Programm: Wenn man sich nicht mit der Materie etwas auseinandersetzt, glaubt man garnicht wie leistungfähig (und zuverlässig)...
Forum: Programmieren allgemein
Delphi
by Delphi.Narium,
24. Jun 2021
Dafür nimmt man Vorlagen (.dotx), die können nicht versehentlich verändert und gespeichert werden.
Man erstellt ein neues Dokument unter Nutzung der Vorlage: Damit fällt dann schonmal das SaveAs und das Close des "Originals" unter Sicherstellung, dass es nicht verändert wurde, weg.
Das heißt noch lange nicht, dass man das nicht trotzdem aus Delphi heraus per Word fernsteuern könnte....
Forum: Programmieren allgemein
Delphi
by Delphi.Narium,
24. Jun 2021
Bevor wir jetzt einzelne Probleme lösen, ohne den eigentlichen Zusammenhang zu kennen, beschreibe bitte zuerste einmal ganz abstrakt den anvisierten Arbeitsablauf.
Danach kann man dann ggfls. klären, ob und wie eine Umsetzung realisiert werden kann.
Mir ist momentan z. B. unklar, ob der User das Worddokument bearbeiten kann oder ob er es bearbeiten muss, ...
Wenn das Worddokument...
Forum: Programmieren allgemein
Delphi
by Delphi.Narium,
23. Jun 2021
procedure TForm1.FormDestroy(Sender: TObject);
begin
Try
WordApp.Quit; // Word beenden.
Except
// Fehlermeldung ausgeben oder sonstwas machen oder Fehler ignorieren.
end;
Try
WordApp := Unassigned;
Except
Forum: Programmieren allgemein
Delphi
by Delphi.Narium,
23. Jun 2021
Wenn Du im Taskmanager nachschaust, wirst Du feststellen, dass Word noch läuft (und das geöffnete Dokument nicht geschlossen wurde und (vermutlich) jeder ButtonClick eine weitere Wordinstanz erstellt).
procedure TForm1.Button2Click(Sender: TObject);
var
vParam : OleVariant;
begin
// Aktuelles Dokument unter neuem Namen speichern.
...