![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
| Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks. |
| |||||||
![]() |
| |
| | #1 (permalink) |
| | Registry Access Hi, I have a application which writes data to the HKLM key. This is system wide app data, used by all users of the program (regardless of login name etc) in fact some of it is shared between programs. What am I supposed to do under Vista - where should I write this data to?, does it stay in the registry or become a txt file? I've had a look around MSDN and can't find any guidelines apart from "store it in %ALLUSERSPROFILE%", however this is a directory. Can someone point me in the right direction. Thanks Tim |
My System Specs![]() |
| | #2 (permalink) |
| | Re: Registry Access Based on some research I did to try and answer this question (probably through the same sites you have already been to) I would say the answer is to write your settings out to a file. Assuming that you have source access to all of the applications that share these settings. I would be tempted to write a single assembly to provide access to your settings that your applications would then reference - then put the settings into IsolatedStorage. I'm not sure if that is a reasonable solution for your situation or not. Hope that helps. "Tim Gee" <tg@dffdsfd.zzz> wrote in message news:eiidIJ%23DHHA.4208@TK2MSFTNGP03.phx.gbl... > Hi, > > I have a application which writes data to the HKLM key. This is system > wide app data, used by all users of the program (regardless of login name > etc) in fact some of it is shared between programs. What am I supposed to > do under Vista - where should I write this data to?, does it stay in the > registry or become a txt file? I've had a look around MSDN and can't find > any guidelines apart from "store it in %ALLUSERSPROFILE%", however this is > a directory. Can someone point me in the right direction. > > Thanks > > Tim > > |
My System Specs![]() |
| | #3 (permalink) |
| | Re: Registry Access Chris wrote: > Based on some research I did to try and answer this question (probably > through the same sites you have already been to) I would say the answer > is to write your settings out to a file. Back to the Windows 3.1 era with INI files! -- Gerry Hickman (London UK) |
My System Specs![]() |
| | #4 (permalink) |
| | Re: Registry Access Hello, System-wide configuration data is stored in HKLM. However, the user has to be an administrator in order to save system-wide state data, because user accounts are limited to only affecting their own user account, and not other user accounts. If you need access to HKLM, you should seperate out the chunks of your program that need to modify HKLM into a secondary program or COM component, set this program to require admin permission, and then run this secondary program from your main program when needing to modify HKLM. This secondary program will then prompt the user for admin permission (or allow an admin to log in to approve the action) and then save the settings. The best solution is to not save system-wide state. -- - JB Windows Vista Support Faq http://www.jimmah.com/vista/ |
My System Specs![]() |
| | #5 (permalink) |
| | Re: Registry Access Thanks Guys. Has anyone found chapter & verse on this from Microsoft? Tim "Jimmy Brush" wrote: > Hello, > > System-wide configuration data is stored in HKLM. However, the user has to > be an administrator in order to save system-wide state data, because user > accounts are limited to only affecting their own user account, and not other > user accounts. > > If you need access to HKLM, you should seperate out the chunks of your > program that need to modify HKLM into a secondary program or COM component, > set this program to require admin permission, and then run this secondary > program from your main program when needing to modify HKLM. This secondary > program will then prompt the user for admin permission (or allow an admin to > log in to approve the action) and then save the settings. > > The best solution is to not save system-wide state. > > > -- > - JB > > Windows Vista Support Faq > http://www.jimmah.com/vista/ > |
My System Specs![]() |
| | #6 (permalink) |
| | Re: Registry Access Hi Jimmy, I think that's a bit of an over complicated view of how it's supposed to work. It's very simple; you have machine settings in HKLM and user settings in HKCU. The machine settings are set at install time BUT the user can read machine settings, they just can't write to them. It has worked perfectly since Win NT 3.51 Jimmy Brush wrote: > Hello, > > System-wide configuration data is stored in HKLM. However, the user has > to be an administrator in order to save system-wide state data, because > user accounts are limited to only affecting their own user account, and > not other user accounts. > > If you need access to HKLM, you should seperate out the chunks of your > program that need to modify HKLM into a secondary program or COM > component, set this program to require admin permission, and then run > this secondary program from your main program when needing to modify > HKLM. This secondary program will then prompt the user for admin > permission (or allow an admin to log in to approve the action) and then > save the settings. > > The best solution is to not save system-wide state. > > -- Gerry Hickman (London UK) |
My System Specs![]() |
| | #7 (permalink) |
| | Re: Registry Access I believe we pretty much said the same thing? -- - JB Windows Vista Support Faq http://www.jimmah.com/vista/ |
My System Specs![]() |
![]() |
| Thread Tools | |
| |
Similar Threads | ||||
| Thread | Forum | |||
| How to access a registry entry wo no access rights | Vista security | |||
| Access to Registry | Windows Updates | |||
| When standard users access Vista registry remotely, Access Denied | Vista account administration | |||
| Registry Access | Vista General | |||
| WMI access to registry | PowerShell | |||