Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1225011
  • 博文数量: 788
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 7005
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-19 15:52
文章存档

2017年(81)

2011年(1)

2009年(369)

2008年(337)

分类:

2009-02-03 09:54:29



我想在这个键下面通过程序设置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);

感谢各位的帮助,谢谢!

阅读(368) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~