加入收藏
联系我们
论坛帮助
   首页 登陆 注册 搜索 自选风格 论坛状态 我能做什么

>> VB.NET,VC.NET,C#.NET,ASP.Net等.
逍遥·逐鹿论坛程序设计经典? Microsoft Net专区 ? → 运用.NET读写Windows注册编辑表

  发表一个新主题  发表一个新投票  回复主题 您是本帖的第 8 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
 * 贴子主题: 运用.NET读写Windows注册编辑表 保存该页为文件  报告本帖给版主  显示可打印的版本  把本贴打包邮递  把本贴加入论坛收藏夹  发送本页面给朋友  把本贴加入IE收藏夹 
 HappyMe 狮子座1980-8-13
  
  
  头衔:黑暗圣堂
  等级:版主
  魅力:250
  经验:250
  财产:32589
  文章:66
  积分:250
  门派:逍遥派
  注册:2002-11-24
给HappyMe发送一个短消息 把HappyMe加入好友 查看HappyMe的个人资料  点击这里发送电邮给HappyMe 引用回复这个贴子 回复这个贴子 楼主
发贴心情 运用.NET读写Windows注册编辑表

  如果你曾经使用过RegOpenKeyEx、RegCreateKeyEx、RegCloseKey等Win32 API函数读写过注册编辑表,你肯定非常熟悉这些复杂的Registry函数。相反,在.NET框架中,Registry和RegistryKey类提供了对Windows注册编辑表的控制,通过这些类你可非常容易地对注册编辑表进行读写。 

  这些类被定义在Microsoft.Win32命名空间和mscorlib.dll装配中,使用这些类之前,你必须使用using声明这些命名空间。 

  #using 
  using namespace Microsoft::win32; 

  Registry类只有七个字段成员,使得你能够存取注册编辑表中七个特定的键,这同你在注册编辑表中打开一个键非常类似,这些所有的成员均返回一个指向注册键的指针。 

  ClassesRoot 对应于HKEY_CLASSES_ROOT 
  CurrentConfig 对应于HKEY_CURRENT_CONFIG 
  CurrentUser 对应于HKEY_CURRENT_USER 
  DynData 对应于HKEY_DYN_DATA 
  LocalMachine 对应于HKEY_LOCAL_MACHINE 
  PerformanceData 对应于HKEY_PERFORMANCE_DATA 
  Users 对应于HKEY_USERS 

  比如你想读写HKEY_LOCAL_MACHINE的数据,你可以先获得一个指向该键的指针。 

  RegistryKey* pRegKey = Registry::LocalMachine; 

  接着调用RegistryKey的OpenSubKey成员函数,然后再调用Getvalue即可获得一个特定的字符串。 

  pRegKey->OpenSubKey(L"SOFTWARE\\Kruse Inc\\Version"); 
  Object *pvalue = pRegKey->Getvalue(L"kWise"); 

  如果你想设置一个键的值,则需要调用它的Setvalue函数。 

  pRegKey->Setvalue(L"kWise", "some value Here"); 

  删除一个值可以使用: 

  pRegKey->Deletevalue(L"kWise"); 

  其它常用的成员函数还有: 

  DeleteSubKey 删除一个子键 
  CreateSubKey 如果键已经存在就打开该键,否则就创建新键 
  DeleteSubKeyTree 删除子键及其节点 

  下面是程序代码例子(Microsoft Visual c++.net beta2调试通过): 

  #using 
  using namespace System; 
  using namespace Microsoft::Win32; 
  // 这是应用程序的入口点 
  int main(void) 
  { 
  RegistryKey * pRegKey = Registry::LocalMachine; 
  pRegKey = pRegKey->OpenSubKey(L"HARDWARE\\DESCRIPTION 
       \\System\\CentralProcessor\\0"); 
  Object *pvalue = pRegKey->Getvalue(L"VendorIdentifier"); 
  Console::WriteLine(L"本机的CPU为: {0}.", pvalue); 
  return 0; 
  }

点击查看用户来源及管理<br>发贴IP:*.*.*.* 2003-3-9 9:18:20
  鲜花(0)  砖头(0)

本主题贴数1,分页: [1]
 *快速回复:运用.NET读写Windows注册编辑表
你的用户名:    还没注册?    密码:    忘记密码?
内容
  • HTML标签: 不可用
  • UBB标签: 可用
  • 贴图标签: 可用
  • 多媒体标签:可用
  • 表情字符转换:可用
  • 上传图片:可用
  • 最多15KB
  • 邮件回复 显示签名   [Ctrl+Enter直接提交贴子]

    管理选项锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告

    版权所有:逍遥·逐鹿 技术支持:动网论坛
    Copyright ©2000 - 2002