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 Install / Error 2335


2 replies to this topic

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 22 April 2003 - 14:56

Hi All,

ich habe folgendes Problem mit WI 2.0 (Dev 7)
Ich Installiere ein MSI-Paket (Child.msi) als Nested Setup (CA-Typ: 23) eines anderen MSI-Paketes (Parent.msi).
Das Child.msi wird nur installiert, wenn ein entsprechendes Feature (ChildFeature) zur installation markiert wird.

Wähle ich das ChildFeature bei der Erstinstallation aus ist alles O.K.
Wähle ich das ChildFeature bei der Erstinstallation nicht aus, starte das Parent.msi direkt (Nicht über Systemsteuerung\Software), oder über die Setup.exe im MaintenanceMode und markiere dann ChildFeature zur Installation, ist auch alles bestens.

Nur wenn ich das Setup über Systemsteuerung\Software aufrufe, und im Maintenancemode ChildFeature zur Installation auswähle, bricht das Setup mit Fehler 2335 ab.

- Fehler 2335. Ein interner Fehler ist aufgetreten. (E:\WINNT\Installer\ \MeinRechner\MeineSetups\Parentmsi\ )

Hierbei ist \MeinRechner\MeineSetups\Parentmsi\ das Verzeichnis, aus dem ich die Erstinstallation getätigt habe, und in dem beide MSI-Pakete liegen.

Der Fehler tritt auf während der installation von Child.msi bei der Aktion 'PublishProduct'.

Ein Fehler im Child.msi ist es hoffentlich nicht, da es sich hier um ein MS-Setup handelt.
Ich habe schon versucht die Aktion 'ResolveSource' aufzurufen, bzw. deren Aufruf explizit unterbunden, aber leider ohne Erfolg.

Wer hat eine Idee oder Lösung zu diesem Problem ?

Danke und Gruß,
Peter
Ciao for Now[br]PeKaWe

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 25 April 2003 - 15:24

E:\WINNT\Installer\ ist das Verzeichnis aus dem das Parent-MSI gestartet wird, wenn du über die Systemsteuerung gehst. Vermutlich findet er von dort aus nicht das Child-MSI. DIe Fehlernummer 2335 bedeutet: Path: [2] is not a parent of [3].

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 25 April 2003 - 15:45

Hi Stefan,

klar, der WI startet das gecachte Paket aus E:\WinNT\Installer.
Mein erster Gedanke war auch, daß er das Child.msi nicht finden kann, aber child.msi wird gestartet.
Das Problem tritt erst bei der Standard-Action 'PublishProduct' des Child.msi auf.

In diesem speziellen Fall habe ich das Problem jetzt wie folgt gelöst:

Da das Child.msi bisher nichts mit dem Pfad E:\WinNT\Installer zu tun hatte und hat, gehe ich davon aus, daß es sich diesen Pfad vom Parent.Msi holt.
Hier würde sich das Property 'OriginalDatabase' anbieten.
Ein Vergleich zweier Logfiles (Einmal MaintenanceMode gestartet von der Erstinstallationsquelle, einmal über Systemsteuerung\Software) bestätigte, daß genau hier ein Unterschied lag.

Also habe ich direkt vor dem Start des child.msi das Property 'OriginalDatabase' gesichert 'ResolveSource' ausgeführt, und 'OriginalDatabase' mit [SourceDir]Parent.msi befüllt.
Nach der Installation von Child.msi habe ich wieder den Ursprünglichen Wert in 'OriginalDatabase' geschrieben.

Nun installiert sich das Child.msi auch im MaintenanceMode gestartet aus der Systemsteuerung.


Trotzdem Danke für deine Mühe.

Gruß,
Peter

Ciao for Now[br]PeKaWe