Hallo !
Ich versuche gerade ein kleines Setup zu erstellen, dass sich über Gruppenrichtlinien / Softwareinstallation verteilen lässt.
Das Setup läuft ohne Benutzereingaben vollständig durch (auch im quiet-Modus von MSIExec). Sobald es aber per Gruppenrichtlinie installiert werden soll, kommen diverse Fehlermeldungen (u.a. dass auf Netzwerkdatei {GUID} nicht zugegriffen werden kann).
Andere Programme lassen sich aber über Gruppenrichtlinien verteilen und liegen an der selben Stelle auf dem Server.
Was jemand etwas zu dem Thema ? Ist irgendetwas zu beachten ?
MSI-Installation über Gruppenrichtlinien Q09082007
-
- Administrator
- Beiträge: 1092
- Registriert: 29.02.2004, 15:51
- Wohnort: Hamburg
- Kontaktdaten:
Erledigt (inkl. Side-Effekt im AKInstaller)
Hallo Herr Kapust,
nach einigen Stunden experimentieren bin ich auf den Schuldigen gestoßen.
Wenn im AKInstaller unter "Produkt" / "Update/Produkt-Codes" die Option "Installationspfad vorheriger Versionen wiederherstellen" aktiviert ist, dann wird bei der Installation der (gesetzte) INSTALLDIR durch den Aufruf einer AKI-Funktion überschrieben.
Da das Produkt aber noch nicht installiert war/ist, wird von der Funktion der Produkt-Upgradecode als INSTALLDIR gesetzt (ist mir später aufgefallen, als ich das Log) . Das mag dann natürlich der Rest der Installation nicht mehr und es kommt zu besagtem Fehler (statt {GUID} steht die ganze GUID in der Meldung).
Dann hätte ich noch ein paar Sachen/Fehler als Randbemerkung:
* Bei dem PathEdit-Control fehlt das Attribut "Indirekt". Man kann das Bit nur über die XML-Datei nachträglich löschen.
* Bei jedem Start vom AKInstaller und beim ersten Lauf der ICE-Prüfung "richtet" der WindowsInstaller "irgend etwas". Danach ist Ruhe bis zum Programm-Start. (Ähnliches habe ich auch von anderen gelesen)
* Es wäre schön, wenn man der Projektausgabe-Pfad pro Produkt einstellen könnte. Auch wäre es gut, wenn die Pfadvariablen und Produktvariablen überall zur Verfügung stünden (und die Produktversion nicht umformatiert wird - im Setup ist sie so wie eingegeben und in den Dateinamen als 4er-Zahlengruppe).
Ansonsten muss ich ein Lob aussprechen:
Die Unterstützung des WindowsInstallers durch den AKInstallerMSI ist super. Es geht alles, wenn's auch ein Weilchen dauert (und man den WindowsInstaller "geschluckt" hat).
Werner Slabon
nach einigen Stunden experimentieren bin ich auf den Schuldigen gestoßen.
Wenn im AKInstaller unter "Produkt" / "Update/Produkt-Codes" die Option "Installationspfad vorheriger Versionen wiederherstellen" aktiviert ist, dann wird bei der Installation der (gesetzte) INSTALLDIR durch den Aufruf einer AKI-Funktion überschrieben.
Da das Produkt aber noch nicht installiert war/ist, wird von der Funktion der Produkt-Upgradecode als INSTALLDIR gesetzt (ist mir später aufgefallen, als ich das Log) . Das mag dann natürlich der Rest der Installation nicht mehr und es kommt zu besagtem Fehler (statt {GUID} steht die ganze GUID in der Meldung).
Dann hätte ich noch ein paar Sachen/Fehler als Randbemerkung:
* Bei dem PathEdit-Control fehlt das Attribut "Indirekt". Man kann das Bit nur über die XML-Datei nachträglich löschen.
* Bei jedem Start vom AKInstaller und beim ersten Lauf der ICE-Prüfung "richtet" der WindowsInstaller "irgend etwas". Danach ist Ruhe bis zum Programm-Start. (Ähnliches habe ich auch von anderen gelesen)
* Es wäre schön, wenn man der Projektausgabe-Pfad pro Produkt einstellen könnte. Auch wäre es gut, wenn die Pfadvariablen und Produktvariablen überall zur Verfügung stünden (und die Produktversion nicht umformatiert wird - im Setup ist sie so wie eingegeben und in den Dateinamen als 4er-Zahlengruppe).
Ansonsten muss ich ein Lob aussprechen:
Die Unterstützung des WindowsInstallers durch den AKInstallerMSI ist super. Es geht alles, wenn's auch ein Weilchen dauert (und man den WindowsInstaller "geschluckt" hat).
Werner Slabon
-
- Administrator
- Beiträge: 1092
- Registriert: 29.02.2004, 15:51
- Wohnort: Hamburg
- Kontaktdaten:
Guten Morgen!
Danke für die ausführliche Beschreibung, ich werde mir die Punkte mal genauer ansehen und wahrschenlich noch die eine oder andere Frage zu haben.
Das 'irgendwas richten' sollte mit der aktuellen Version behoben sein.
Dieses waren in dem Fall Registry-Key die bei einer Deinstallation zur Löschung vorgesehen waren und erst beim Aufruf bestimmter Dialog erstellt werden. Da hier keine Bedingung angegeben war, kam es zum "Reparier"-Versuch.
"wenn's auch ein Weilchen dauert"
Wenn ich von Kunden solche Stellen genannt bekomme, wird natürlich versucht, diese Stelle besser zu machen. Solche Punkte landen stetz auf der ToDo-Liste.
Danke für die ausführliche Beschreibung, ich werde mir die Punkte mal genauer ansehen und wahrschenlich noch die eine oder andere Frage zu haben.
Das 'irgendwas richten' sollte mit der aktuellen Version behoben sein.
Dieses waren in dem Fall Registry-Key die bei einer Deinstallation zur Löschung vorgesehen waren und erst beim Aufruf bestimmter Dialog erstellt werden. Da hier keine Bedingung angegeben war, kam es zum "Reparier"-Versuch.
"wenn's auch ein Weilchen dauert"
Wenn ich von Kunden solche Stellen genannt bekomme, wird natürlich versucht, diese Stelle besser zu machen. Solche Punkte landen stetz auf der ToDo-Liste.

Mit freundlichen Grüßen,
AKApplications, Andreas Kapust
AKApplications, Andreas Kapust
"wenn's auch ein Weilchen dauert"
Damit meine ich wirklich die Gewinnung des Verständnisses für den Windows Installer.
Aber wenn Sie die Dinge interessiert, an denen ich ein "bisschen" Unsicher war bzw. Zeit auf der Suche nach einer Lösung verbraucht habe:
1. Frage: Kann man VBSkripte bedenkenlos verwenden oder kann es sein, dass die Ausführung nicht möglich ist, weil auf einem Rechner vbscript deaktiviert wurde ?
2. Problem: Wir wollten für ein neues Update-Setup die Anwendungssuche verwenden - allerdings nur auf Wunsch des Benutzers - also wenn er in einem Dialog auf "Suchen" klickt. Das scheint aber von der Suche nicht unterstützt zu werden.
3. Problem: Zum Anlegen eines weiteren Installationsziels (-> "Neuer Ordner über Eigenschaft") müsste man das Kontextmenü des Computers verwenden und nicht ein bereits existierendes Installationsziel (man erwartet ja, dass man einen Unterordner erstellt - und das will man ja nicht !)
4. Problem: Die Erstellung eines Setups mit Ablage am richtigen Ort und Dateiname ist nur fast perfekt (-> Umformatierte Versionsnummer statt eingegebene, keine Pfadeangabe/Pfadvariablen für Setupausgabe sondern Ausgabe im anwendungsdefinierten Install-Ordner, automatische Verwendung des Projektnames als Unterordner-Name im Install-Ordner).
Da war noch mehr, aber das fällt mir jetzt nicht mehr ein - das hat aber, wie schon gesagt, vielmehr mit dem Windows Installer zu tun.
Viele Grüße
Werner Slabon
Damit meine ich wirklich die Gewinnung des Verständnisses für den Windows Installer.
Aber wenn Sie die Dinge interessiert, an denen ich ein "bisschen" Unsicher war bzw. Zeit auf der Suche nach einer Lösung verbraucht habe:
1. Frage: Kann man VBSkripte bedenkenlos verwenden oder kann es sein, dass die Ausführung nicht möglich ist, weil auf einem Rechner vbscript deaktiviert wurde ?
2. Problem: Wir wollten für ein neues Update-Setup die Anwendungssuche verwenden - allerdings nur auf Wunsch des Benutzers - also wenn er in einem Dialog auf "Suchen" klickt. Das scheint aber von der Suche nicht unterstützt zu werden.
3. Problem: Zum Anlegen eines weiteren Installationsziels (-> "Neuer Ordner über Eigenschaft") müsste man das Kontextmenü des Computers verwenden und nicht ein bereits existierendes Installationsziel (man erwartet ja, dass man einen Unterordner erstellt - und das will man ja nicht !)
4. Problem: Die Erstellung eines Setups mit Ablage am richtigen Ort und Dateiname ist nur fast perfekt (-> Umformatierte Versionsnummer statt eingegebene, keine Pfadeangabe/Pfadvariablen für Setupausgabe sondern Ausgabe im anwendungsdefinierten Install-Ordner, automatische Verwendung des Projektnames als Unterordner-Name im Install-Ordner).
Da war noch mehr, aber das fällt mir jetzt nicht mehr ein - das hat aber, wie schon gesagt, vielmehr mit dem Windows Installer zu tun.
Viele Grüße
Werner Slabon
-
- Administrator
- Beiträge: 1092
- Registriert: 29.02.2004, 15:51
- Wohnort: Hamburg
- Kontaktdaten:
Guten Morgen!
Wieder sehr ausführlich, danke.
1:
Wenn das Script nicht ausgeführt werden kann, bricht die Installation mit hoher Wahrscheinlichkeit ab. Geschieht das mitten in der Installationsphase ist das natürlich peinlich. Wenn möglich, sollten also vorher geprüft werden, ob vbscript läuft oder die CA (Benutzerdef. Aktion) besser gleich mittels C-Dll erstellt werden. Was für VBScript gilt, gilt natürlich auch für .NET-CAs, die zwar möglich sind, das Windows Installer-Team davon aber abrät (eben aus den oben genannten Gründen).
2:
Die Anwendungssuche geschieht beim Start automatisch und das Ergebnis wird in Eigenschaften abgelegt (ich weiß jetzt nicht genau welche Suche Sie meinen). Die Eigenschaften können natürlich bei einer eigenen CA ausgelesen und verwendet werden.
3:
Hier hab ich jetzt nicht ganz verstanden was Sie meinen.
4:
Okay, auf der ToDo-Liste.
Wieder sehr ausführlich, danke.

1:
Wenn das Script nicht ausgeführt werden kann, bricht die Installation mit hoher Wahrscheinlichkeit ab. Geschieht das mitten in der Installationsphase ist das natürlich peinlich. Wenn möglich, sollten also vorher geprüft werden, ob vbscript läuft oder die CA (Benutzerdef. Aktion) besser gleich mittels C-Dll erstellt werden. Was für VBScript gilt, gilt natürlich auch für .NET-CAs, die zwar möglich sind, das Windows Installer-Team davon aber abrät (eben aus den oben genannten Gründen).
2:
Die Anwendungssuche geschieht beim Start automatisch und das Ergebnis wird in Eigenschaften abgelegt (ich weiß jetzt nicht genau welche Suche Sie meinen). Die Eigenschaften können natürlich bei einer eigenen CA ausgelesen und verwendet werden.
3:
Hier hab ich jetzt nicht ganz verstanden was Sie meinen.

4:
Okay, auf der ToDo-Liste.
Mit freundlichen Grüßen,
AKApplications, Andreas Kapust
AKApplications, Andreas Kapust
1. Das habe ich mir schon gedacht. Deshalb haben wir beim ersten Projekt auch eine C-DLL gemacht, die in unbekannte Regionen verteilt wird.
2. Das ist schade, dass es keine Suche gibt, die später gestartet werden kann.
3. Wenn man einen "neuen Ordner über Eigenschaften" anlegen möchte, muss man einen anderen Ordner (z.B. INSTALLDIR) per Rechtsklick anklicken. Der neue Ordner erscheint dann aber als Nachbar von INSTALLDIR. Korrekterweise muss diese Funktion aber beim Rechtsklick auf Zielcomputer freigegeben sein.
4. ok.
Viele Grüße
Werner Slabon
2. Das ist schade, dass es keine Suche gibt, die später gestartet werden kann.
3. Wenn man einen "neuen Ordner über Eigenschaften" anlegen möchte, muss man einen anderen Ordner (z.B. INSTALLDIR) per Rechtsklick anklicken. Der neue Ordner erscheint dann aber als Nachbar von INSTALLDIR. Korrekterweise muss diese Funktion aber beim Rechtsklick auf Zielcomputer freigegeben sein.
4. ok.
Viele Grüße
Werner Slabon
-
- Administrator
- Beiträge: 1092
- Registriert: 29.02.2004, 15:51
- Wohnort: Hamburg
- Kontaktdaten:
Guten Abend!
2:
Es ist geplant sowas als interne CA bereitzustellen (Prof). Allerdings steht hier noch kein Termin fest, da zur Zeit Bootstrapper mit Benutzerrechten und Ordnerfreigabe auf dem Plan steht.
Wünsche und Vorschläge zur Suchfunktion würden dann natürlich umgesetzt.
3:
Ok, jetzt verstanden.
2:
Es ist geplant sowas als interne CA bereitzustellen (Prof). Allerdings steht hier noch kein Termin fest, da zur Zeit Bootstrapper mit Benutzerrechten und Ordnerfreigabe auf dem Plan steht.
Wünsche und Vorschläge zur Suchfunktion würden dann natürlich umgesetzt.
3:
Ok, jetzt verstanden.
Mit freundlichen Grüßen,
AKApplications, Andreas Kapust
AKApplications, Andreas Kapust