Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Windows Scripting Host


1 reply to this topic

Matthias

Matthias
  • Members
  • 1 posts

Posted 27 August 2003 - 10:00

Hallo,

ich benutze den Dev8 mit einem Installscript-MSI-Projekt und muss den WSH ausschließlich für W2k installieren. Dazu habe ich das von Installshield beigefügte Merge Modul (wsh56.msm) verwendet und es mit einem Feature verbunden. Laut Dokumentation wird dann das Merge Modul installiert, wenn das Feature installiert wird. Der Anwender soll das Feature allerdings nicht über die Oberfläche auswählen, sondern die Installation soll für ihn unbemerkt geschehen. Also habe ich folgende Idee verfolgt:

- Abfrage, welches Windows benutzt wird
- wenn W2k, soll das Feature mit folgendem Code installiert werden:

if (nvWinMajor = 5) then
nResult=FeatureIsItemSelected (MEDIA, "WSH");
if nResult = 1 then
else
MessageBox ("Installation fehlgeschlagen", INFORMATION);
endif;
endif;

So weit, so gut.

Allerdings wird das Merge Modul immer (!!!) ausgeführt und zwar ganz am Anfang des Installationsvorgangs (noch vor OnFirstUIBefore). Das führt letztendlich zu folgendem Problem:

- Wird der Installer unter win98 eingesetzt, wird ebenfalls der WSH installiert - ebenfalls ganz am Anfang. Anschließend möchte der Installer einen Reboot. Nach dem Reboot hängt der IDriver. Wird er per CTRL-ALT-Delete abgeschossen, läuft die Installation weiter.

Meine Frage lautet -nach dieser langen Einleitung- nun:

1. Wie kann man beeinflussen, dass das Merge Modul immer installiert wird
oder noch besser
2. Wie kann man ein Merge Modul abhängig von der Windows-Version installieren?
oder
3. Wie kann das Problem mit win98 gelöst werden?

Ich wäre froh, wenn mir jemand weiterhelfen könnte.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 27 August 2003 - 16:23

Das Problem ist, dass es sich hier nicht um ein "normales" Merge Modul handelt (das die WSH Dateien enthalten würde). Stattdessen enthält das Module nur das WSH Setup, das über eine Custom Action aufgerufen wird.

Eine Lösungsmöglichkeit wäre, das Modul zu bearbeiten. Aber einfacher wäre es wohl, das WSH Setup einfach aus dem Skript per LaunchAppAndWait aufzurufen.