Schließt alle Dokumente sowie die Word Anwendung
#include <Word.au3>
_Word_Quit ( $oAppl [, $iSaveChanges = $WdDoNotSaveChanges [, $iOriginalFormat = $WdWordDocument [, $bForceClose = False]]] )
$oAppl | Word Objekt zurückgegeben von einem Aufruf von _Word_Create() |
$iSaveChanges | [optional] Definiert, ob geänderte Dokumente gesichert werden sollen, bevor die Word Anwendung beendet wird. Kann eine Konstante der WdSaveOptions Aufzählung sein (Standard = $WdDoNotSaveChanges) |
$iOriginalFormat | [optional] Legt fest, wie Word Dokumente behandelt, deren originales Format kein Word Dokumentenformat ist.. Kann eine Konstante der WdOriginalFormat Aufzählung sein (Standard = $WdWordDocument) |
$bForceClose | [optional] Bei True wird die Word Anwendung auch geschlossen, wenn sie bereits zum _Word_Create() Zeitpunkt lief (Standard = False) |
Erfolg: | 1. |
Fehler: | 0 und setzt das @error Flag auf ungleich null. |
@error: | 1 - $oAppl ist kein Objekt 2 - Fehler beim Schließen der Anwendung. @extended wird auf den COM Fehlercode gesetzt |
Wenn Word nicht lief, als _Word_Create() aufgerufen wurde, dann schließt _Word_Quit() alle Dokumente der angegebenen Instanz (sogar wenn diese Dokument durch den Benutzer manuell geöffnet wurden).
Wenn Word aber bereits lief, dann muss $bForceClose auf True gesetzt werden um das selbe Ergebniss zu erreichen.
#include <MsgBoxConstants.au3>
#include <Word.au3>
; Erzeugt ein neues oder stellt eine Verbindung zu einem bestehenden Word-Objekt her
Local $oWord = _Word_Create()
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocQuit Beispiel", _
"Fehler beim Erstellen des Word-Anwendungsobjektes." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
Local $bWordClose = @extended
; Öffnet das Testdokument im Lesemodus
_Word_DocOpen($oWord, @ScriptDir & "\Extras\Test.doc", Default, Default, True)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocQuit Beispiel", _
"Fehler beim Öffnen von '.\Extras\Test.doc'." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
; Wenn Word beim Starten des Skripts bereits lief, dann wird nur die Referenz auf das Word Objekt beendet.
; Wenn Word durch dieses Beispiel gestartet wurde, dann wird die Word Anwendung geschlossen und somit ALLE Word Dokumente.
Local $iResult
If $bWordClose Then
$iResult = MsgBox(($MB_OKCANCEL + $MB_SYSTEMMODAL), "Word UDF: _Word_Quit Beispiel", _
"Wenn Sie OK klicken, dann gehen ALLE ungesicherten Änderungen ALLER offenen Dokumente dieser Word Instanz verloren und di Instanz wird beendet.")
Else
$iResult = MsgBox(($MB_OKCANCEL + $MB_SYSTEMMODAL), "Word UDF: _Word_Quit Beispiel", _
"Word lief bereits als die Funktion _Word_Create aufgerufen wurde. Daher wird nun nur die Referenz auf das Word Objekt beendet.")
EndIf
If $iResult = 2 Then Exit
_Word_Quit($oWord)
If @error Then MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_Quit Beispiel", _
"Fehler beim Schließen des Word Objektes." & @CRLF & "@error = " & @error & ", @extended = " & @extended)