James Hawkins wrote:
On 03 Mar 2005 11:02:24 +0100, Alexandre Julliard julliard@winehq.org wrote:
James Hawkins truiken@gmail.com writes:
I've been discerning the behavior of RegCreateKey and NtCreateKey when creating a key directly under HKLM or HKU, and this test reveals that NtCreateKey does check for this case and returns a STATUS_INVALID_PARAMETER.
This is going to break registry initialisation. Do you really have an app that depends on that?
What are the steps I need to take to break registry initialisation? I did wonder how anything in the real win32 registry could be created though if you can't create a key directly under HKLM or HKU. If this really does break initialisation, can we implement a different create_key that has little restrictions and would only be used internally, or would this just be scrapped entirely?
It looks like Windows only uses RegLoadKey to create keys under HKLM and HKU. Maybe we should do the same.
Rob
On Thu, 03 Mar 2005 11:37:48 -0600, Robert Shearman rob@codeweavers.com wrote:
It looks like Windows only uses RegLoadKey to create keys under HKLM and HKU. Maybe we should do the same.
Rob
I agree we should use RegLoadKey as well to be consistent. Where is the registry initialisation code? I'd like to look around in there and see what can be done.
James Hawkins wrote:
On Thu, 03 Mar 2005 11:37:48 -0600, Robert Shearman rob@codeweavers.com wrote:
It looks like Windows only uses RegLoadKey to create keys under HKLM and HKU. Maybe we should do the same.
Rob
I agree we should use RegLoadKey as well to be consistent. Where is the registry initialisation code? I'd like to look around in there and see what can be done.
It is in misc/registry.c. Changing wine to using separate branches for the subkeys of HKLM and HKU is a pretty big change though.
Rob
James Hawkins wrote:
On Thu, 03 Mar 2005 11:37:48 -0600, Robert Shearman rob@codeweavers.com wrote:
It looks like Windows only uses RegLoadKey to create keys under HKLM and HKU. Maybe we should do the same.
Rob
I agree we should use RegLoadKey as well to be consistent. Where is the registry initialisation code? I'd like to look around in there and see what can be done.
It is in misc/registry.c. Changing wine to using separate files for the subkeys of HKLM and HKU is a pretty big change though.
Rob
On Thu, 03 Mar 2005 13:15:46 -0600, Robert Shearman rob@codeweavers.com wrote:
I agree we should use RegLoadKey as well to be consistent. Where is the registry initialisation code? I'd like to look around in there and see what can be done.
It is in misc/registry.c. Changing wine to using separate files for the subkeys of HKLM and HKU is a pretty big change though.
Rob
Do you have any suggestions for me? In the meantime I'm going to look through registry.c. My idea is that I (or whoever else) will work on switching registry initialisation from RegCreateKey to RegLoadKey, and then bring in the NtCreateKey tests and create_key fixes after the RegLoadKey change has gone through.