23972
31.01.2006, aktualisiert am 27.10.2006 um 22:06:44 Uhr
24482
5
0
Batch Datei in MSI Installer aufrufen?
Hallo,
ich arbeite mit dem Visual Studio Installer (Setup- und Weitergabeprojekt), und möchte nun per "Benutzerdefinierter Aktion" automatisch eine *.bat oder *.cmd Datei starten lassen, nachdem der "normale" Installationsvorgang beendet ist. Leider kann man dort nur *.exe oder *.dll Dateien hinzufügen!
Gibt es eine Möglichkeit, wie man das trotzdem hinbekommt?
Ich hab schon versucht aus der *.bat per "Quick Batch File Compiler" eine *.exe Datei zu erstellen und die einzubinden, aber er bricht immer ab, mit der Fehlermeldung:
"Es liegt ein dieses Windows Installer-Paket betreffendes Problem vor. Ein Programm, dass im Rahmen der Installation ausgeführt wurde, wurde nicht erfolgreich abgeschlossen."
Hat da jemand Erfahrung?
Mfg
H.
ich arbeite mit dem Visual Studio Installer (Setup- und Weitergabeprojekt), und möchte nun per "Benutzerdefinierter Aktion" automatisch eine *.bat oder *.cmd Datei starten lassen, nachdem der "normale" Installationsvorgang beendet ist. Leider kann man dort nur *.exe oder *.dll Dateien hinzufügen!
Gibt es eine Möglichkeit, wie man das trotzdem hinbekommt?
Ich hab schon versucht aus der *.bat per "Quick Batch File Compiler" eine *.exe Datei zu erstellen und die einzubinden, aber er bricht immer ab, mit der Fehlermeldung:
"Es liegt ein dieses Windows Installer-Paket betreffendes Problem vor. Ein Programm, dass im Rahmen der Installation ausgeführt wurde, wurde nicht erfolgreich abgeschlossen."
Hat da jemand Erfahrung?
Mfg
H.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 24906
Url: https://administrator.de/contentid/24906
Ausgedruckt am: 22.11.2024 um 20:11 Uhr
5 Kommentare
Neuester Kommentar
Hallo,
Die gute Nachricht: es ist möglich...
Du kannst eine Custom Action einbinden,
jetzt hängt es noch davon ab, ob in Deiner Batch irgendwelche Umgebungsvariablen verwendet werden müssen (sprich: kann diese im System-Kontext laufen)
und wann diese Laufen soll (User-Interface Phase, Installations-Phase u.s.w.
Binde eine Custom Action Typ
3106 TypeInScript + TypeNoImpersonate
bzw.
3170 TypeInScript + TypeNoImpersonate + ExeFile mit Pfadangabe + IgnorExitCode
das Bat File muss natürlich in irgendeiner Form zum Ausführungszeitpunkt auf dem Client liegen, dann kannst Du aus dem MSI Heraus einen Aufruf machen (CustomAction Table, Source-Spalte: SystemFolder TargetSpalte: [SystemFolder]cmd.exe /c call <PfadZuDeiner BAT>
Gruss,
Wolfgang Zerzawy
CleverITS
http://www.cleverits.com
http://www.paketierung.de
cmd.exe
Die gute Nachricht: es ist möglich...
Du kannst eine Custom Action einbinden,
jetzt hängt es noch davon ab, ob in Deiner Batch irgendwelche Umgebungsvariablen verwendet werden müssen (sprich: kann diese im System-Kontext laufen)
und wann diese Laufen soll (User-Interface Phase, Installations-Phase u.s.w.
Binde eine Custom Action Typ
3106 TypeInScript + TypeNoImpersonate
bzw.
3170 TypeInScript + TypeNoImpersonate + ExeFile mit Pfadangabe + IgnorExitCode
das Bat File muss natürlich in irgendeiner Form zum Ausführungszeitpunkt auf dem Client liegen, dann kannst Du aus dem MSI Heraus einen Aufruf machen (CustomAction Table, Source-Spalte: SystemFolder TargetSpalte: [SystemFolder]cmd.exe /c call <PfadZuDeiner BAT>
Gruss,
Wolfgang Zerzawy
CleverITS
http://www.cleverits.com
http://www.paketierung.de
cmd.exe
Hallo,
Leider verwenden wir bei uns nicht den VS eigenen SetupBuilder sonder Wise bzw. InstallShield zum Erstellen von MSI.
Kannst Du bitte mal in der Hilfe nach "Custom Actions" suchen? dann können wir darauf weiter aufbauen.
cu
Wolfgang Zerzawy
CleverITS
http://www.cleverits.com
http://www.paketierung.de
Leider verwenden wir bei uns nicht den VS eigenen SetupBuilder sonder Wise bzw. InstallShield zum Erstellen von MSI.
Kannst Du bitte mal in der Hilfe nach "Custom Actions" suchen? dann können wir darauf weiter aufbauen.
cu
Wolfgang Zerzawy
CleverITS
http://www.cleverits.com
http://www.paketierung.de
.....Leider kann man dort nur *.exe ...... hinzufügen!
Dann versuche es mal so:
Konvertiere Deine *.bat oder *.cmd zuerst in eine ausführbare *.exe.
Geht mit "Batch2Exe!.exe" hervorragend. http://www.cadkas.de/downgertools.php
Alle Batch_Dateien auswählen die Du in einen EXE Konvertieren willst. Start-Batch-Datei auswählen, danach (wichtig!) die Option "Projetdateien von BAT Datei aus erreichbar halten" auswählen.
hth
onegasse59