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

Nested MSI's im Unterordner des Setups


10 replies to this topic

maniac

maniac
  • Full Members
  • 94 posts

Posted 08 February 2006 - 14:20

Wenn ich ein Nested MSI in mein Setup einbinde und das Projekt kompilieren wird dies immer dort abgelegt, wo auch meine Setup,exe liegt, also:

DISK1
|
|->setup.exe
|->Fremdfile.msi

nun möchte ich aber das Fremd-MSI-File in einem Unterordner ablegen, also wie folgt:

DISK1
|
|-MSI
| |
| |---> Fremdfile.msi
|
|-->setup.exe

wie mache ich das, sodass das Nested MSI bei der Installation auch im Unterordner gefunden wird ???

Gruß

maniac

Edited by maniac, 08 February 2006 - 14:21.


ali

ali
  • Full Members
  • 1,008 posts

Posted 08 February 2006 - 15:12

ich weiß jetzt nicht wie du das Nestet MSI eingebunden hast, aber du musst wohl die Custom Action auf "Auf dem Quelldatenträger gespeichert" stellen und dann bei deinem Beispiel die Quelle der CA auf

MSI\Fremdfile.msi

stellen.

Also immer den Unterordner ausgehen von der Hauptmsi aus mit angeben.

maniac

maniac
  • Full Members
  • 94 posts

Posted 08 February 2006 - 15:36

Ja genau so hab ich es gemacht, wie Du sagt, kommt jedoch immer Error beim compilieren, wenn ich es im Folder der Setup.exe mit ablege funzt alles ohne Probs.

ali

ali
  • Full Members
  • 1,008 posts

Posted 08 February 2006 - 16:01

ja da muss wohl noch was händisch gefriemelt werden.
du legst dir einen Ordner MSI an, da legst du die Fremdfile.msi rein.
dann gehst du in deinem Projekt in "Support Dateien". Da sollte auch deine Fremdfile.msi schon rumstehen. Die kannsde rauslöschen. Dann fügst du dort den Ordner MSI über hinzufügen ein. Das sollte gehen, habs probiert.
Obs dann mit dem Aufruf klappt, musst du probieren.

Edited by ali, 08 February 2006 - 16:02.


maniac

maniac
  • Full Members
  • 94 posts

Posted 08 February 2006 - 17:27

kriegs nicht hin. Wenn ich unter SupportFiles den gesagten Ordner MSi einfügen und bei der CA vor das Fremfile.msi noch MSI\ also:

MSI\Fremdfile

schreiben, kommt ein compile Error. Wenn ich in der CA nur fremfile.msi stehen habe, wird bei der Installation das MSi nicht gefunden und es kommt zum Error, wenn der ReturnCode ausgewertet wird. D.h. mein Nested MSI wird einfach nicht installiert.

Ich meine es geht ja alles, wenn die Nested MSI im Root der Setup.exe liegt, warum können die nicht im Unterfolder liegen ? Es sieht so optimisch einfach professioneller aus.

Edited by maniac, 08 February 2006 - 17:29.


maniac

maniac
  • Full Members
  • 94 posts

Posted 08 February 2006 - 17:30

Kann ich da vielleicht irgendwas im Direct Editor hacken ?

ali

ali
  • Full Members
  • 1,008 posts

Posted 08 February 2006 - 18:28

also ich habe noch mal ausgetestet und jetzt hat es nicht funktioniert, also habe ich ein bisschen rumgesucht.
Mal in eizelnen
Du legst eine Pfadvariable an mit Namen MSI die auf den Ordner MSI wo deine Fremdfile.msi drin steht.

Dann fügst du noch mal den MSI Ordner unter Supportet Files ein. Den alten vorgher raus löschen. Dort sollte jetzt ein <MSI> stehen.

Dann erstellst du deine CA nochmal neu mit den angegeben Eigenschaften. Also "ein weiteres MSI starten", "Auf dem Quelldatenträger gespeichert" usw. direkt auf die msi Datei.

Das sollte dann gehen.

Wenn du dann beim ersten Compileversuch wieder einen Fehler bekommst, schau noch mal unter supportet Files nach. Wenn dort eine Fremdfile.msi steht, dann lösche sie raus. Dort darf nur der Ordner <MSI> stehen der auf die Fremdfile.msi
verweist.
Das funktioniert so bei mir.

Skorpion81

Skorpion81
  • Members
  • 4 posts

Posted 09 February 2006 - 09:05

Hallo,
ich hänge mich hier einfach mal an die Diskussion an.
Ich habe es so gemacht wie Ali es beschrieben hat und kann das Setup auch in Developer 7.0 erstellen. Wenn ich das Setup dann durchführe dann läuft das auch ohne Fehlermeldung durch. Aber danach finde ich das Setup nirgends bei mir auf dem Rechner.

Momentan sieht die Testinstallation bei mir so aus, dass ich nur über eine CA ein fremdes .msi aufrufe.
Weiter nichts.
Später möchte ich dann mehrere fremde .msi aufrufen.


maniac

maniac
  • Full Members
  • 94 posts

Posted 09 February 2006 - 13:17

So jetzt gehts, allerdings mit der Abweichung, das die CA auf "Included within your main setup" und nicht "Stored on the source media" stehen muss.

Vieln Dank für die Info mit der Pfadvariable. Das war der Knackpunkt. rolleyes.gif rolleyes.gif rolleyes.gif

ali

ali
  • Full Members
  • 1,008 posts

Posted 09 February 2006 - 13:23

hm, also eigentlich sollte das schon mit "Stored on the source media" funktonieren, bei der Einstellung "Included within your main setup" ist ja normalerwiese die Child MSI im HauptMSI mit eingebunden, sprich die HauptMSI sollte jezt größer sein als vorher!
Im übrigen, hat du dir bei der Art der Installation auch schon was für den Repair und den Deinstall der Child MSI überlegt? Bei Major Upgrades kannst du Probleme bekomen, das das SourceMedia nicht gefunden wird.

Edited by ali, 09 February 2006 - 13:26.


maniac

maniac
  • Full Members
  • 94 posts

Posted 10 February 2006 - 13:58

Du hast voll recht. Ist mir gestern aufgefallen, dass das MSI jetzt wesentlich größer ist. So wollte ich das natürlich nicht. Wenn ich jedoch auf die von Dir beschriebene Weise die Nested MSI's einbinde, kann ich jetzt zwar compilieren, jedoch werden bei der Installation die Nested MSI nicht im Subfolder <MSI> gefunden. Ich habe jetzt also wieder alle rückgängig gemacht. Übrings bei einer Deinstallation werden auch alle Nested MSI's wieder ordentlich entfernt. Repair-Modus wird nicht unterstützt, da nach der Installation durch die Application bestimmte Accounts angelegt werden, die eine Aktivierung durch einen Server erfordern. Diese Accouts sind verschlüüselt und somit immer anders. Der User hat also nur die Möglichkeit komplett zu deinstallieren. Wenn er neu installieren muss, so braucht er auch einen neuen Aktivierungskey. REPAIR brauche ich aus diesem Grund auch nicht, da diese wie gesagt die Application nicht unterstützt. UPGRADE wäre vielleicht noch ein Thema, falls ein Patch auf die Nested MSI notwendig wären. Hast Du da spezielle Tips was ich bei den Condition beachten müsste ?