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

msi Installation schreibt nicht ins HKCU


22 replies to this topic

bernard

bernard
  • Full Members
  • 127 posts

Posted 26 January 2006 - 12:49

Hallo Alle,

habe DevStudio 9.0 SP1

Als StandardUser führe vom InstallScript Project das Basic MSI Project:
msiexec /i "<path>\my.msi" INSTALLDIR="<my_dir>" /L*V "<my_tmpdir>\file.log" /qn
aus.

my.msi ist vom Basic MSI Project erstellt.
Property Manager -> ALLUSERS=leer

Es wird ins HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall geschrieben.
Im "file.log" finde ich in Property keine ALLUSERS=

Wie kann ich ins HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall schreiben?


bernard

bernard
  • Full Members
  • 127 posts

Posted 30 January 2006 - 11:14

1. Von Property Manager habe ALLUSERS gelöscht.
2. Habe setup.rul eingefügt
OnBegin
ALLUSERS = FALSE (oder NULL) gesetzt
im OnEnd zeigt es immer ALLUSERS ist TRUE!
Und wird wieder ins HKLM geschrieben.

Ich möchte ins HKCU schreiben.

Leider finde ich keine richtige Lösung.

bernard

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 30 January 2006 - 11:45

Das Löschen aus dem property Manager war schon eine gute Idee. Jetzt nimmst du es noch zur Sicherheit zusätzlich aus dem Script (wieso hast du in dem Basic MSi Projekt überhaupt ein InstallScript?). Dann schreibst du ein ausführliches Log auf einer Maschine mit MSI 3.x, denn dann steht im Log auch jede Property-Änderung. So findest du hoffentlich heraus, wodurch das ALLUSERS Property gesetzt wird. Das könnte z.B. ein Dialog, eine Custom Action (auch in einem Merge Modul) sen, oder evtl. ein Eintrg in der Property-Tabelle eines Mergemoduls.

bernard

bernard
  • Full Members
  • 127 posts

Posted 30 January 2006 - 14:30

Danke für den Tip!

Habe keine Merge Modules.
Im setup.rul - ALLUSERS= habe gelöscht.
(setup.rul habe wegen ALLUSERS genommen)

msiexec - Ver 2.00.2600.2

Test PC - W2K standard (SP1)

Leider finde im log-File keine Zeile mit ALLUSERS!


bernard

bernard

bernard
  • Full Members
  • 127 posts

Posted 31 January 2006 - 10:03


Habe die Dialogs geprüft:
- InstallWelcome -> Next - NewDialog - ReadyToInstall -1
- ReadyToInstall -> InstallNow - EndDialog - Return - OutOfNoRbDiskSpace <> 1
NewDialog - OutOfSpace - OutOfNoRbDiskSpace = 1
ProgressType1 - Installing - 1
ProgressType2 - installed - 1
ProgressType3 - installs - 1
- OutOfSpace -> Resume - NewDialog - AdminNetworkLocation - ACTION="<ADMIN>"
- NewDialog - CustomSetup - ACTION <> "ADMIN"

Danach kommt die Meldung vom setup.rul -> OnEnd() : ALLUSERS ist TRUE

Ist es mein Problem mit ALLUSERS?
Wie kann ich im Dialogs -> OutOfSpace ändern,z.B. erste Zeile löschen?

Danke für Hilfe.

bernard

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 01 February 2006 - 09:50

QUOTE (Stefan Krueger @ 2006-01-30 11:45)
Dann schreibst du ein ausführliches Log auf einer Maschine mit MSI 3.x, denn dann steht im Log auch jede Property-Änderung.

Probier das doch mal.

bernard

bernard
  • Full Members
  • 127 posts

Posted 02 February 2006 - 12:02

Hallo,

habe DevStudio 9.0 SP1

Als StandardUser führe vom InstallScript Project das Basic MSI Project:
msiexec /i "<path>\my.msi" INSTALLDIR="<my_dir>" /L*V "<my_tmpdir>\file.log" /qn
aus.

my.msi ist vom Basic MSI Project erstellt.
Im setup.rul (InstallScript Project) setze ALLUSERS = FALSE;

Test PC mit w2k: (Vorschlag vom Stefan)
- installiert SP4
- msiexec 3.00.3790.2538

Im file.log finde keine ALLUSERS= !

PS.
my.msi
setup.rul -> OnBegin() zeigt sofort ALLUSER ist TRUE (?)

Was mache ich falsch?

Danke
bernard

ali

ali
  • Full Members
  • 1,008 posts

Posted 02 February 2006 - 14:22

Hast du in der msi Hilfe mal über ALLUSERS nachgelesen?
Wieso hast du nicht gleich msi 3.1 installiert?

Edited by ali, 02 February 2006 - 14:27.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 02 February 2006 - 14:38

Also, das ALLUSERS im aufrufenden InstallScript Projekt hat nichts mitr dem ALLUSERS im aufgerufenen Windows Instalelr Setup zu tun. Wenn im MSI-Setup ALLUSERS=1 gesetzt ist dann muss das auch irgendwo im Log stehen. Hattest du schon geprüft, ob ALLUSERS in the Proeprty-tabelle drinsteht? (Das sollte nicht der Fall sein). Schau dazu die .msi Datei an, nicht das InstallShield Projekt.

bernard

bernard
  • Full Members
  • 127 posts

Posted 13 February 2006 - 09:11

Test Computer: XP Prof Vers 2002(eng)
mit Windows Installer 3.1

Als Power Users führe vom InstallScript Project das Basic MSI Project:
msiexec /i "<path>\my.msi" INSTALLDIR="<my_dir>" ALLUSERS=xx /L*V "<my_tmpdir>\file.log" /qn
aus.

my.msi ist vom Basic MSI Project erstellt.

Meine Versuche:
1. ALLUSERS=1
Bekomme Error 1925. "You do not have sufficient privileges..."
Im log-File steht ALLUSERS=1

2. ALLUSERS=NULL
Bekomme Error 1925. "You do not have sufficient privileges..."
Im log-File steht ALLUSERS=1

3. ALLUSERS=""
Im log-File steht keine ALLUSERS

4. ALLUSERS=2
Im log-File steht keine ALLUSERS

Frage: wie kann ich das msi-File anschauen?
Gibt es eine Software?

Danke für Hilfe!

bernard

ali

ali
  • Full Members
  • 1,008 posts

Posted 13 February 2006 - 15:52

mit Orca
such da mal nach ALLUSERS im msi.
Schreibst du ALLUSERS=NULL oder ALLUSERS=0?

Edited by ali, 13 February 2006 - 15:53.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 14 February 2006 - 12:58

3 und 4 schaut doch schon ganz gut aus.

bernard

bernard
  • Full Members
  • 127 posts

Posted 14 February 2006 - 14:33

Hallo ali,

danke für den Tipp.
Habe PSDK-x86.exe downgeloaded und Orca (3.1.4000.1830) installiert.

2. ALLUSERS=NULL

3. my.msi mit Orca:
Habe ControlEvent -> CustomerInformation -> Next -> ALLUSERS={}

Stefan,

leider schreibt es ins HKLM!

bernard

ali

ali
  • Full Members
  • 1,008 posts

Posted 14 February 2006 - 14:53

eins verstehe ich nicht ganz,
wenn du
3. ALLUSERS=""
Im log-File steht keine ALLUSERS

das ist doch OK, was macht denn der Installer bei der Einstellung, ins HKLM kann er ja nicht schreiben, weil keine Rechte, oder bist du beim Test als Admin angemeldet?

ali

ali
  • Full Members
  • 1,008 posts

Posted 14 February 2006 - 14:55

ah kann ich mir selbst beantworten, keine Admin Rechte, weil sonst bei
4. ALLUSERS=2
Im log-File steht keine ALLUSERS

ALLUSERS=1 wäre.

Aber dann müsste er bei der obigen Einstellunge doch jetzt erst mal aufs HKCU springen.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 15 February 2006 - 13:00

Was passiert wenn du 3 oder 4 machst und dabie als eingeshcränkter Benutzer angemeldet bist?

bernard

bernard
  • Full Members
  • 127 posts

Posted 21 February 2006 - 12:17

Test Computer: XP Prof Vers 2002(eng)
mit Windows Installer 3.1

Run -> cmd

Als Users (eingeschränkter Benutzer) führe
msiexec /i "<path>\my.msi" INSTALLDIR="<my_dir>" ALLUSERS=x /L*V "<my_tmpdir>\file.log"
aus.

Meine Versuche:

3. ALLUSERS=""
Im log-File steht
Command Line: ALLUSERS=

4. ALLUSERS=2
Im log-File steht
Command Line: ALLUSERS=2

In beiden Versuchen bekomme
Error 1911. Could not register type library for file %USERPROFILE%\<filename> ...

Sage "Ignore".
Die Files sind ins <my_dir> ausgepackt.

Finde im HKLM\Software\Microsoft\...\Uninstall\{guid}

my.msi ist Basic MSI Project:
- da sind 14 OCX- und DLL-Files. Alle sind
Components -> <filename> -> Files -> mit Set Key File gesetzt!

Wahrscheinlich kommt es von da?

bernard

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 21 February 2006 - 17:37

Wenn du dich danach als anderer Benutzer anmeldest, siehst du dann den Eintrag in der Systemsteuerung > Software?

bernard

bernard
  • Full Members
  • 127 posts

Posted 22 February 2006 - 12:21

Hallo Stefan,

habe zuerst 2 Mal als Standard User installiert.
Danach angemeldet als eingeschränkter Benutzer.
Er sieht keine Einträge in der Systemsteuerung -> Software.

Jeder Benutzer sieht nur seine Einträge!

Soll ich im Basic MSI Project ALLUSERS=2 eintragen?

bernard


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 22 February 2006 - 13:04

QUOTE
Jeder Benutzer sieht nur seine Einträge!

Dann ist doch eigentlich alles in Ordnung, oder?

bernard

bernard
  • Full Members
  • 127 posts

Posted 24 February 2006 - 11:26

Hallo alle.

Jetzt ist OK!

Als Users (eingeschränkter Benutzer) oder Power Users (Standard User) führe
msiexec /i "<path>\my.msi" INSTALLDIR="<my_dir>" /L*V "<my_tmpdir>\file.log"
aus.
kein ALLUSERS=x!

my.msi ist Basic MSI Project: ohne ALLUSERS!

Jeder Benutzer sieht nur seine Einträge und allgemeine (mit ALLUSERS=2 installierte).

Da kann ich so leben.

Danke für die Hilfe!
bernard

bernard

bernard
  • Full Members
  • 127 posts

Posted 02 July 2009 - 13:55

bin ich wieder

habe IS2008 Professional Edition version 14 jetzt

Aus einem InstallScript Projekt führe ich zig Basic MSI Projekte aus.

Als StandardUser führe vom InstallScript Project das Basic MSI Project:
msiexec /i "<path>\ProductX.msi" INSTALLDIR="<my_dir>" /L*V "<my_tmpdir>\file.log" /qn
aus.

ProductX.msi ist Basic MSI Project.
Im setup.rul
SdCustomerInformation() setzt ALLUSERS auf FALSE.

Es wird pro ProductX ins HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall geschrieben.

Ich möchte ins HKCU schreiben.
Wie kann ich ins HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall schreiben?
Leider finde ich keine richtige Lösung.

bernard


bernard

bernard
  • Full Members
  • 127 posts

Posted 24 August 2010 - 10:31

habe IS2008 Professional Edition version 14

Aus einem InstallScript-MSI Projekt führe ich zig Basic MSI Projekte aus.

Test PC mit Win XP HE + SP3

Als Standard-User führe vom InstallScript-MSI Project das Basic MSI Project:
z.B.
msiexec /i "N:\IS2008_VM-XPHE\Shared 23.08.2010-ohne_SCOUT2\msi\License Management.msi" INSTALLDIR="C:\DELTA\" ApplicationUsers=OnlyCurrentUser ARPSYSTEMCOMPONENT=1 DSTGPRODUCT=2 USERNAME="standard" /L*V "C:\DOKUME~1\standard\LOKALE~1\Temp\License_Management.log" /qn
aus.

"License Management.msi" ist Basic MSI Project.
Es wird ins HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall geschrieben.

Dazu mein Log-File "License_Management.log" und Reg-File:
--- hkllm_licadmin_uninst.reg -----------
Windows Registry Editor Version 5.00
# JB
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{606D2EB6-6F27-4356-9903-3F183B89C25F}]
"AuthorizedCDFPrefix"=""
"Comments"=""
"Contact"=""
"DisplayVersion"="2.00.0000"
"HelpLink"=""
"HelpTelephone"=""
"InstallDate"="20100824"
"InstallLocation"="C:\\DELTA\\"
"InstallSource"="N:\\IS2008_VM-XPHE\\Shared 23.08.2010-ohne_SCOUT2\\msi\\"
# ModifyPath -> habe editiert
"ModifyPath"=MsiExec.exe /I{606D2EB6-6F27-4356-9903-3F183B89C25F}
"Publisher"="Delta Software Technology GmbH"
"Readme"=""
"Size"=""
"EstimatedSize"=dword:000004f8
"SystemComponent"=dword:00000001
# UninstallString -> habe editiert
"UninstallString"=MsiExec.exe /I{606D2EB6-6F27-4356-9903-3F183B89C25F}
"URLInfoAbout"="http://www.d-s-t-g.com"
"URLUpdateInfo"=""
"VersionMajor"=dword:00000002
"VersionMinor"=dword:00000000
"WindowsInstaller"=dword:00000001
"Version"=dword:02000000
"Language"=dword:00000409
"DisplayName"="License Management"
----- hkllm_licadmin_uninst.reg ------------------

Ich möchte ins HKCU schreiben.
Wie kann ich ins HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall schreiben?

Leider finde ich keine richtige Lösung.

bernard

Attached Files