Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie können ein Skript erstellen, um Aktionen auszuführen, wenn eine Anwendung bereitgestellt wird, und dann definieren, wann es während des Bereitstellungsprozesses ausgeführt wird. Sie können sowohl Installations- als auch Bereinigungscode in dasselbe Skript einschließen, indem Sie Umgebungsvariablen verwenden, um den Code zu trennen. Sie können auch Befehlszeilenargumente an das Skript übergeben.
Vorsicht
Sie sollten immer Skripts schreiben, die für Produktionssysteme im unbeaufsichtigten Modus vorgesehen sind. Dies liegt daran, dass ein Skript, das auf die Benutzereingabe wartet, die BizTalk-Datenbanken sperren und unzugänglich machen kann, bis die Eingabe empfangen wird.
Angeben, wann ein Skript während der Bereitstellung ausgeführt wird
Sie geben an, wann ein Skript ausgeführt wird, wenn Sie das Skript zu einer Anwendung hinzufügen, indem Sie es entweder als System.BizTalk:PreProcessingScript (Vorverarbeitungsskript) oder ein System.BizTalk:PostProcessingScript (Nachverarbeitungsskript) hinzufügen.
Skripts vor und nach der Verarbeitung werden wie folgt ausgeführt:
Vorverarbeitungsskripts werden am Anfang des Import- oder Installationsprozesses ausgeführt.
Nachbearbeitungsskripts werden am Ende des Import- oder Installationsprozesses ausgeführt.
Während der Deinstallation werden alle Skripts in der entgegengesetzten Reihenfolge ausgeführt, in der sie während der Installation ausgeführt werden. Deshalb werden Nachbearbeitungsskripts am Anfang der Deinstallation und Vorverarbeitungsskripts am Ende der Deinstallation ausgeführt.
Wenn eine Installation fehlschlägt, werden Skripts mit der entsprechenden Rollbackaktion in umgekehrter Reihenfolge aufgerufen.
Sobald aufgerufen, bestimmt ein Vor- oder Nachverarbeitungsskript, welcher Bereitstellungsstatus (Installations-, Import-, Lösch-, Deinstallations-, Import-Rollback- oder Installations-Rollback) ausgeführt wird, indem die Umgebungsvariablen BTAD_ChangeRequestAction, BTAD_InstallMode und BTAD_HostClass überprüft werden, wie unter How Environment Variables Indicate Deployment State beschrieben. Referenzinformationen zu den Variablen finden Sie unter Skriptumgebungsvariablen vor und nach der Verarbeitung.
Anweisungen zum Hinzufügen eines Skripts zu einer Anwendung finden Sie unter Hinzufügen eines Skripts vor oder nach der Verarbeitung zu einer Anwendung.
Hinweis
Wenn Sie Befehlszeilenargumente in ein Skript einschließen möchten, wie weiter unten in diesem Thema erläutert, müssen Sie den Befehl "AddResource" verwenden, um das Skript hinzuzufügen.
Unterstützte Skriptdateierweiterungen
Die folgenden Skriptdateierweiterungen werden unterstützt: .com, .exe, .bat, .cmd, .vbs, .vbe, .js, .jse, .wsf und WSH. Dieser Satz von Erweiterungen wird in der PATHEXT-Umgebungsvariable definiert.
Protokollierungsfehler
Als bewährte Methode sollten Sie jedes Skript so konfigurieren, dass Fehler in einer Datei protokolliert werden. Dies liegt daran, dass Windows Installer keine Fehler protokolliert, die in den Skripts generiert wurden. Sie sollten diese Protokolle überprüfen, nachdem das Skript ausgeführt wurde, um nach Fehlern zu suchen, die behoben werden müssen.
Um zu ermitteln, wann der Fehler aufgetreten ist, können Sie das Datum und die Uhrzeit in die Protokolldatei einschließen.
Verwenden Sie den folgenden Code, um eine Protokolldatei anzugeben und dann einen Fehler zu protokollieren.
Set LogFile=<full path of log file>
…
echo %DATE% %TIME% <text> >> %LogFile%
Wenn das öffentliche Schlüsseltoken nicht definiert ist, wird im folgenden Beispiel ein Eintrag in der angegebenen Protokolldatei vorgenommen. In der Protokolldatei wird das Datum und die Uhrzeit in derselben Zeile wie der Text geschrieben: "Öffentlicher Schlüssel sollte im Skript festgelegt werden.".
set LogFile=C:\ScriptLog.txt
set PublicKeyToken=e5fd0ea4ecd37420
if not defined PublicKeyToken (
echo %DATE% %TIME% Public key should be set in script >> %LogFile%
Sie können die Zeile exit /b 1 auch zu einem Skript hinzufügen, um einen Fehlercode für Windows Installer zu generieren, wodurch ein Rollback ausgeführt wird.
Wenn das öffentliche Schlüsseltoken im folgenden Beispiel nicht definiert wurde, gibt das Skript einen Fehler an Windows Installer zurück, und das Installationsprogramm wird zurückgestellt.
set LogFile=C:\ScriptLog.txt
set PublicKeyToken=e5fd0ea4ecd37420
if not defined PublicKeyToken (
echo %DATE% %TIME% Public key should be set in script >> %LogFile%
exit /b 1
Einschließen von Installations- und Bereinigungscode in dasselbe Skript
Da Skripts während der Installation und Deinstallation in der entgegengesetzten Reihenfolge ausgeführt werden, können Sie Installations- und Bereinigungscode in dasselbe Skript innerhalb einer bedingungsbedingten Anweisung einschließen. Sie können z. B. den Installationscode in einer bedingten Anweisung platzieren, die wie folgt nach dem Installationsmodus sucht:
%BTAD_ChangeRequestAction%=Update AND %BTAD_InstallMode%=Install
Sie können Bereinigungscode in einer bedingten Anweisung definieren, die den Installationsmodus wie folgt überprüft:
%BTAD_ChangeRequestAction%=Delete AND %BTAD_InstallMode%=Uninstall
Übergeben von Befehlszeilenargumenten
Sie können Befehlszeilenargumente an das Skript übergeben, indem Sie den folgenden Parameter angeben, wenn Sie den BEFEHL BTSTask AddResource verwenden, um das Skript der Anwendung hinzuzufügen. In diesem Fall werden die Argumente beim Aufrufen des Skripts an das Skript übergeben.
/Property:Args="argument list"
Hinweis
Wenn Sie mehrere Skripts vor oder nach der Verarbeitung in und anwendung haben, werden sie in keiner bestimmten Reihenfolge ausgeführt.
Von Bedeutung
Sie sollten BTSTask-Befehle nicht in Skripts verwenden, insbesondere die, die während des Imports ausgeführt werden, da Skripts nicht in derselben Transaktion wie ein Import aufgelistet sind.
Anweisungen zum Verwenden des Befehls "AddResource" zum Hinzufügen eines Skripts zu einer Anwendung finden Sie unter "AddResource Command: Preprocessing Script". Siehe auch "AddResource Command: Postprocessing Script"
Siehe auch
Verwenden von Skripts vor und nach der Verarbeitung zum Anpassen der Anwendungsbereitstellung
Vorlage (Anwendungsbereitstellungsbeispiel)