请问如何获得这个键值? Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiAPI/html/delphi_20061117005510214.html
我想在这个键下面通过程序设置Windows的自动更新,但不知道怎么取得“{C611B475-175A-4114-9ABD-F37B85A06F22}”这个值,好象这个值每个用户下都不一样
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\{C611B475-175A-4114-9ABD-F37B85A06F22}Machine\Software\Policies\Microsoft\Windows\WindowsUpdate
用RegEnumKeyEx枚举HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\ 下的所以键名,找到你要的键名再取键值。
但是对于一个新创建的用户来说不存在“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects”这个键值,这个键值是当用gpedit.msc设置了组策略后才产生的。
枚举前先判断它键是否存在,参考一下TRegistry.KeyExists的实现方法。
老之把思路都已经说了,具体实现自然要进行一些流程上的判断。
顺便说一句:老之还在CSDN混呢
可能是我没有说清楚,我是想在“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\{C611B475-175A-4114-9ABD-F37B85A06F22}Machine\Software\Policies\Microsoft\Windows\WindowsUpdate”这个键下写些值,如果存在这个键的时候可以用“老之”的枚举方法,但如果这个键不存在时,我要自己创建这个键,但问题是不知道{C611B475-175A-4114-9ABD-F37B85A06F22}这个值是怎么产生的,而每个用户下这个值又是不同的。
如果是创建这个键,试下:
uses ComObj, ActiveX;
var Guid : TGUID;
Key : string;
CoCreateGuid(Guid);
Key := GUIDToString(Guid);
感谢各位的帮助,谢谢!