[Bug 44981] Xenserver console and Vmware management console (client) v5.5 installer fails on 'hcmon' driver service ('EventLog\\System' needs 'Sources' registry key present for WinVer < Windows 7)

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Jun 25 10:02:36 CDT 2018


https://bugs.winehq.org/show_bug.cgi?id=44981

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Xenserver console and       |Xenserver console and
                   |Vmware management console   |Vmware management console
                   |(client) v5.5 installer     |(client) v5.5 installer
                   |doesn't install packages    |fails on 'hcmon' driver
                   |(although reports success)  |service ('EventLog\\System'
                   |                            |needs 'Sources' registry
                   |                            |key present for WinVer <
                   |                            |Windows 7)
          Component|-unknown                    |registry

--- Comment #14 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

it looks like the installer has some awareness of Windows Eventlog service
differences between Windows 2000/XP/2003 and newer Windows versions.

After 'winetricks -q dotnet35sp1' (requirement for installer), the WINEPREFIX
WinVer is set to 'Windows Xp'. This causes a failure during installation of
'Hcmon' service.

--- snip ---
$ WINEDEBUG=+seh,+relay,+msi,+service wine ./VMware-viclient.exe >>log.txt 2>&1
...
00bf:trace:msi:ACTION_CustomAction Handling custom action
L"VM_InstallHcmon.AB568CC9_1F06_4225_B985_9531B0D3BB56" (c01
L"msmUSBDevicesInstUtil.dll" L"VMInstallHcmon")
00bf:warn:msi:ACTION_CustomAction msidbCustomActionTypeNoImpersonate not
handled
00bf:trace:msi:msi_get_property 0x16dfe8
L"VM_InstallHcmon.AB568CC9_1F06_4225_B985_9531B0D3BB56" (nil) 0x33f59c 
...
00bf:trace:msi:msi_get_property returning L"C:\\Program Files\\Common
Files\\VMware\\USB\\;5" for property
L"VM_InstallHcmon.AB568CC9_1F06_4225_B985_9531B0D3BB56"
00bf:trace:msi:msi_set_property 0x16dfe8 L"CustomActionData" L"C:\\Program
Files\\Common Files\\VMware\\USB\\;5" -1
00bf:trace:msi:msi_get_property 0x16dfe8 L"CustomActionData" (nil) 0x33ed9c 
...
00bf:trace:msi:HANDLE_CustomType1 Calling function L"VMInstallHcmon" from
L"C:\\users\\focht\\Temp\\msi2cb4.tmp" 
...
00bf:trace:msi:wait_thread_handle waiting for
L"VM_InstallHcmon.AB568CC9_1F06_4225_B985_9531B0D3BB56" 
...
00c2:Call advapi32.CreateServiceW(0015da90,0060998c L"hcmon",0060b2f8 L"VMware
hcmon",00020002,00000001,00000002,00000001,0056f978
L"C:\\windows\\system32\\drivers\\hcmon.sys",0060a224 L"Extended
base",00000000,005e84fc L"",00000000,00000000) ret=005a52d3
0
...
00c2:Call advapi32.OpenSCManagerW(00000000,00600a8c L"ServicesActive",000f003f)
ret=005a30f2 
...
00c2:Ret  advapi32.OpenSCManagerW() retval=0015da90 ret=005a30f2
00c2:Call advapi32.OpenServiceW(0015da90,0060998c L"hcmon",000f01ff)
ret=005a323a 
...
00c2:Ret  advapi32.OpenServiceW() retval=0015daf0 ret=005a323a
00c2:Call advapi32.StartServiceA(0015daf0,00000000,00000000) ret=005a335c 
...
00c2:Ret  advapi32.StartServiceA() retval=00000001 ret=005a335c
00c2:Call advapi32.QueryServiceStatus(0015daf0,0056f918) ret=005a3432 
...
00c2:Ret  advapi32.QueryServiceStatus() retval=00000001 ret=005a3432
00c2:Call advapi32.CloseServiceHandle(0015daf0) ret=005a35c3 
...
00c2:Call advapi32.RegCreateKeyExW(80000002,0056f984
L"SYSTEM\\CurrentControlSet\\Services\\EventLog\\System\\hcmon",00000000,00000000,00000000,00000007,0056f8dc,0056f980,00000000)
ret=0058f571
00c2:Ret  advapi32.RegCreateKeyExW() retval=00000000 ret=0058f571
...
00c2:Call advapi32.RegSetValueExW(00000074,006018f4
L"EventMessageFile",00000000,00000002,0056fbbc,0000004c) ret=005a3f9d
00c2:Ret  advapi32.RegSetValueExW() retval=00000000 ret=005a3f9d
00c2:Call advapi32.RegSetValueExW(00000074,00601858
L"TypesSupported",00000000,00000004,0056fba8,00000004) ret=005a4001
00c2:Ret  advapi32.RegSetValueExW() retval=00000000 ret=005a4001
00c2:Call advapi32.RegCloseKey(00000074) ret=005a405a
00c2:Ret  advapi32.RegCloseKey() retval=00000000 ret=005a405a
00c2:Call KERNEL32.GetVersionExW(0056f794) ret=005bb763
00c2:Ret  KERNEL32.GetVersionExW() retval=00000001 ret=005bb763 
...
00c2:Call advapi32.RegOpenKeyExW(80000002,0056f984
L"SYSTEM\\CurrentControlSet\\Services\\EventLog\\System",00000000,00000007,0056f980)
ret=005a40a9
00c2:Ret  advapi32.RegOpenKeyExW() retval=00000000 ret=005a40a9
00c2:Call advapi32.RegQueryValueExW(00000074,00601764
L"Sources",00000000,00000000,00000000,0056f978) ret=005a40f1
00c2:Ret  advapi32.RegQueryValueExW() retval=00000002 ret=005a40f1
00c2:Call KERNEL32.GetLastError() ret=005a40fd
00c2:Ret  KERNEL32.GetLastError() retval=00000000 ret=005a40fd
...
00c2:Call advapi32.RegQueryValueExW(00000074,00601764
L"Sources",00000000,00000000,00660da8,0056f978) ret=005a41ac
00c2:Ret  advapi32.RegQueryValueExW() retval=00000002 ret=005a41ac
00c2:Call KERNEL32.GetLastError() ret=005a4282
00c2:Ret  KERNEL32.GetLastError() retval=00000000 ret=005a4282
...
00c2:Call KERNEL32.FreeLibrary(00580000) ret=10005602
00c2:Call PE DLL (proc=0x58122b,module=0x580000
L"vnetlib.dll",reason=PROCESS_DETACH,res=(nil)) 
...
00c2:Call user32.MessageBoxW(00010020,00360f78 L"Failed to install the hcmon
driver.",00360fd0 L"VMInstallHcmon",00000010) ret=10004ec2 
--- snip ---

MSDN:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa363648(v=vs.85).aspx

--- quote ---
The structure of the Eventlog key is as follows:

HKEY_LOCAL_MACHINE
   SYSTEM
      CurrentControlSet
         Services
            Eventlog
               Application
               Security
               System
               CustomLog

...

Sources    This value is not used.

Windows Server 2003 and Windows XP/2000:   Names of the applications, services,
or groups of applications that write events to this log. This value should only
be read and not altered. The event log service maintains the list based on each
program listed in a subkey under the log. This value is of type REG_MULTI_SZ.
--- quote ---

Adding an empty 'Sources' REG_MULTI_SZ key lets the installer succeed.

--- snip ---
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog\System]
"Sources"=hex(7):00,00,00,00
--- snip ---

After installation:

--- snip ---
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog\System]
"Sources"=hex(7):68,00,63,00,6d,00,6f,00,6e,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog\System\hcmon]
"EventMessageFile"=hex(2):43,00,3a,00,5c,00,77,00,69,00,6e,00,64,00,6f,00,77,\
  00,73,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,\
  72,00,69,00,76,00,65,00,72,00,73,00,5c,00,68,00,63,00,6d,00,6f,00,6e,00,2e,\
  00,73,00,79,00,73,00,00,00
"TypesSupported"=dword:00000007
...
--- snip ---

Alternatively reset the Windows version of the WINEPREFIX back to 'Windows 7'
(default when creating new prefix).
Anyway, the Windows XP is still a valid use-case and the fix is simple.

Source:

https://source.winehq.org/git/wine.git/blob/HEAD:/loader/wine.inf.in#l3407

$ du -sh VMware-viclient-all-5.5.0-1281650.exe 
349M    VMware-viclient-all-5.5.0-1281650.exe

$ sha1sum VMware-viclient-all-5.5.0-1281650.exe 
wdccbf3e787f05f7930ed712007375188ea99f009 
VMware-viclient-all-5.5.0-1281650.exe

$ wine --version
wine-3.11-21-gb513d6dcbe

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list