C#操作注册表

  名字空间Microsoft.Win32

以下从‘读’‘写’‘删除’‘判断’四个事例实现对注册表的简单操作 
1.读取指定名称的注册表的值 
 1 private   string  GetRegistData( string  name) 
 2
 3   string registData; 
 4   RegistryKey hkml = Registry.LocalMachine; 
 5   RegistryKey software = hkml.OpenSubKey("SOFTWARE",true); 
 6   RegistryKey aimdir = software.OpenSubKey("XXX",true); 
 7   registData = aimdir.GetValue(name).ToString(); 
 8   return registData; 
 9}
 
10 以上是读取的注册表中HKEY_LOCAL_MACHINE/SOFTWARE目录下的XXX目录中名称为name的注册表值; 
11
12 2 .向注册表中写数据 
13 private   void  WTRegedit( string  name, string  tovalue) 
14
15   RegistryKey hklm = Registry.LocalMachine; 
16   RegistryKey software = hklm.OpenSubKey("SOFTWARE",true); 
17   RegistryKey aimdir = software.CreateSubKey("XXX"); 
18   aimdir.SetValue(name,tovalue); 
19}
 
20 以上是在注册表中HKEY_LOCAL_MACHINE/SOFTWARE目录下新建XXX目录并在此目录下创建名称为name值为tovalue的注册表项; 
21
22 3 .删除注册表中指定的注册表项 
23 private   void  DeleteRegist( string  name) 
24
25   string[] aimnames; 
26   RegistryKey hkml = Registry.LocalMachine; 
27   RegistryKey software = hkml.OpenSubKey("SOFTWARE",true); 
28   RegistryKey aimdir = software.OpenSubKey("XXX",true); 
29   aimnames = aimdir.GetSubKeyNames(); 
30   foreach(string aimKey in aimnames) 
31   
32    if(aimKey == name) 
33     aimdir.DeleteSubKeyTree(name); 
34   }
 
35}
 
36 以上是在注册表中HKEY_LOCAL_MACHINE/SOFTWARE目录下XXX目录中删除名称为name注册表项; 
37
38 4 .判断指定注册表项是否存在 
39 private   bool  IsRegeditExit( string  name) 
40
41   bool _exit = false
42   string[] subkeyNames; 
43   RegistryKey hkml = Registry.LocalMachine; 
44   RegistryKey software = hkml.OpenSubKey("SOFTWARE",true); 
45   RegistryKey aimdir = software.OpenSubKey("XXX",true); 
46   subkeyNames = aimdir.GetSubKeyNames(); 
47   foreach(string keyName in subkeyNames) 
48   
49    if(keyName == name) 
50    
51       _exit = true
52       return _exit; 
53    }
 
54   }
 
55   return _exit; 
56}
 
57

以上是在注册表中HKEY_LOCAL_MACHINE/SOFTWARE目录下XXX目录中判断名称为name注册表项是否存在,这一方法在删除注册表时已经存在,在新建一注册表项时也应有相应判断;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值