Ross Levis wrote
>> I had not tried setting rights to registry keys so obviously this 
>> also works as does setting folder security.

But I remain puzzled as I didn't change the permissions for my HKLM key.

When I read this article from Microsoft
http://msdn2.microsoft.com/en-us/library/bb206295.aspx it states (for a
legacy application):
"...Likewise, if an application attempts to write a registry value like
the following:  HKEY_LOCAL_MACHINE\Software\Company Name\Title
it will be redirected instead to:
 
HKEY_CURRENT_USER\Software\Classes\VirtualStore\MACHINE\Software\Company
Name\Title "

But I can't see this virtual key (I used regedt32). Instead I just see
the key I wrote as part of HKLM.  I can even write a new key from my
application (the original key was set by Innosetup) and write to that
key and see it from a different user. I've also written a HKLM key from
a standard user and was able to access it from a different user.

So this isn't the way that is described in the Microsoft article. I have
hardly changed my Vista installation at all, UAC is well and truly on,
and I am getting virtualised files written as described by Microsoft.

Is Windows concatenating the real and virtual keys somehow, so even
regedt32 sees and reports only the concatenated keys?  

The reason I'm concerned about understanding this is that my application
is designed to be used by two or more users who must use some common
configuration settings.  Those settings are currently shared in HKLM.  I
was expecting to have to change that so they were placed in a shared
file, but everything is working, even though Microsoft appears to be
saying that it shouldn't.  I don't want to have to rewrite code if
everything is working.

I'm puzzled!

Regards,
       Brendan Blake.
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Ross Levis
Sent: 28 July 2007 00:53
To: 'Borland's Delphi Discussion List'
Subject: RE: VISTA: Delphi 5 works. HKLM information. Problemscreating
Startmenu icons.

I had not tried setting rights to registry keys so obviously this also
works
as does setting folder security.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf
Of Brendan Blake
Sent: Friday, 27 July 2007 20:55
To: 'Borland's Delphi Discussion List'
Subject: RE: VISTA: Delphi 5 works. HKLM information. Problems creating
Startmenu icons.

I had expected NOT to be able to write to HKLM as Ross says below from
what I had read. 

My tests show that my application (installed in Program Files) by
Innosetup IS ABLE to update HKLM.  I'm using a Vanilla Vista (Home
Premium) system for the tests. I can update from either an administrator
or standard user. I can see the updates from either user (I've only
tested with two users) and the updates are persistent across a power
off/on. I can also see the updates in the registry editor from either
user. I can't see any virtual registry being placed in the users
directory as far as I can see (I CAN see files that are placed there
when an application tries to write to the program files directory.)

As stated in my original item, the permissions for my applications HKLM
registry key was set (on installation) so everyone has full control -
see below for more details. Since the Borland key has the same
permissions my guess is that it is Vista that has set this.  

So I am puzzled. These findings conflict with statements from Ross and
others. I haven't had time to research further at this stage - I know I
ought to!

_______________________________________________
Delphi mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi

_______________________________________________
Delphi mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi

Reply via email to