Jeremy
2007-Mar-19  18:46 UTC
[Wine] wineprefixcreate: msiexec.exe -- "Failed to open the service control manager"
When ~/.wine does not exist, or more specifically the system.reg does 
not yet exist, wineprefixcreate delivers the message "Failed to open the 
service control manager." I have tracked this down to the fact that 
HKLM\CurrentControlSet\Services does not yet exist when the msiexec.exe 
is registered and hence OpenSCManager fails.
What is the proper way to register this key. In DoRegServer I have 
prepended the following code
VVVVVVVV
     WCHAR const key[35] = {
         'S', 'y', 's', 't', 'e',
'm',
         '\\', 'C', 'u', 'r', 'r',
'e', 'n', 't', 'C', 'o', 'n',
't',
'r', 'o', '
l', 'S', 'e', 't',
         '\\', 'S', 'e', 'r', 'v',
'i', 'c', 'e', 's', '\\', 0
     };
     HKEY hkey;
     status = RegCreateKeyExW(HKEY_LOCAL_MACHINE, key,
                              0, NULL, 0, KEY_READ | KEY_WRITE,
                              NULL, &hkey, NULL);
     if (status == ERROR_SUCCESS) {
         RegCloseKey(hkey);
     }
^^^^^^^^
However, this seems kludgey and intuitively does not seem the proper way 
to do things. Putting it in the wine.inf won't work, because installing 
services (SPINST_REGSVR) comes before installing registry keys 
(SPINST_REGISTRY).
I have also commented out the msiexec.exe from the RegisterDllsSection, 
and added wine msiexec.exe /RegServer after the 
setupapi.dll,InstallHinfSection, and this works, but this also seems 
like a kludge.
What is the proper way to guarantee the key exists before encountering 
the msiexec.exe installation?
I'm using wine-0.9.31, non-packaged, on slackware 11.0.
Regards,
Jeremy
dank
2007-Mar-19  18:46 UTC
[Wine] Re: wineprefixcreate: msiexec.exe -- "Failed to open the service control manager"
On Feb 27, 6:06 pm, Jeremy <jcgarb...@comcast.net> wrote:> When ~/.wine does not exist, or more specifically the system.reg does > not yet exist, wineprefixcreate delivers the message "Failed to open the > service control manager." I have tracked this down to the fact that > HKLM\CurrentControlSet\Services does not yet exist when the msiexec.exe > is registered and hence OpenSCManager fails. > > What is the proper way to register this key.It's an open question. See http://bugs.winehq.org/show_bug.cgi?id=7402 - Dan
Daniel Skorka
2007-Mar-19  18:46 UTC
[Wine] Re: wineprefixcreate: msiexec.exe -- "Failed to open the service control manager"
Jeremy <jcgarbage@comcast.net> wrote:> When ~/.wine does not exist, or more specifically the system.reg does > not yet exist, wineprefixcreate delivers the message "Failed to open the > service control manager." I have tracked this down to the fact that > HKLM\CurrentControlSet\Services does not yet exist when the msiexec.exe > is registered and hence OpenSCManager fails. > > What is the proper way to register this key. In DoRegServer I haveI'm not sure this actually is something in need of fixing. There seem to be no side effects apart from this message.> What is the proper way to guarantee the key exists before encountering > the msiexec.exe installation?Ask wine-devel@winehq.org, we are but lowly users ;) Daniel -- Read the Wine FAQ: http://winehq.org/site/docs/wine-faq/index Read the Wine User Guide: http://winehq.org/site/docs/wineusr-guide/index When you post: Which wine version? Self compiled or prepackaged?
Reasonably Related Threads
- [PATCH 1/6] Rationalise whitespace to 4 space indentation with no trailing spaces
- [PATCH 1/3] Rationalise whitespace to 4 space indentation with no trailing spaces
- test_services test case
- GPLPV on windows 7, clean shutdown not working in some case
- RHSrvAny: Fix failure on Windows 2003