`

运用.NET读写Windows注册编辑表

阅读更多

作者: 冉林仓   www.ASPCool.com 时间:2001-11-9 
 


 
     如果你曾经使用过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;
  }

分享到:
评论

相关推荐

    .net 离线文章编辑器(CPA)源码

    《.NET离线文章编辑器(CPA)源码解析》 在信息技术日益发达的今天,开发者们对于高效、便捷的工具需求越来越高。其中,.NET离线文章编辑器(CPA)便是这样一款专为内容创作者设计的软件,它允许用户在无网络环境下撰写...

    .NET Windows编程系列课程(9):程序交互

    在.NET框架下进行Windows编程,程序交互是一个至关重要的主题,它涵盖了应用程序如何与用户、...通过深入理解和熟练运用这些知识点,开发者可以创建出功能强大、用户友好的.NET Windows应用程序,实现高效的程序交互。

    Windows应用程序开发入门到精通二:在VS.NET中使用Windows Forms创建最好的用户体验

    通过本教程,你将全面了解Windows Forms开发,并能运用所学知识在VS.NET中创建出具备优秀用户体验的Windows应用程序。配合提供的ppt、视频和文档,理论与实践相结合,确保学习效果最佳。示例代码将帮助你更好地理解...

    c# .net 学生管理系统

    这个系统专门设计用于高效地管理学生的信息,包括学籍、成绩、出勤等各个方面,对于初学者而言,这是一个很好的实践项目,能够帮助他们深入理解C#和.NET框架的运用。 首先,我们要了解C#语言。C#是微软公司推出的一...

    vb.Net(winform)

    VB.NET(Visual Basic .NET)是微软公司推出的一种面向对象的编程语言,它是.NET框架的一部分,主要用于开发Windows桌面应用程序,尤其是WinForms应用。WinForm是.NET框架提供的一个用于构建图形用户界面(GUI)的库...

    Visual C++.NET应用编程150例

    通过150个实例,读者可以全面了解并熟练运用Visual C++.NET进行.NET应用编程,无论是初学者还是有经验的开发者,都能从中获益。教程中的解决方案和特效部分,将进一步加深对.NET框架及C++/CLI的理解,提升实际开发...

    vb.net超市管理系统论文

    这篇论文将详细阐述如何运用VB.NET来设计和实现这样一个系统。 在数据库方面,论文可能涉及以下知识点: 1. 数据库设计:超市管理系统通常需要处理大量的商品信息、库存数据、销售记录等,因此,合理设计数据库表...

    vb.net程序设计实用教程

    本教程通过7个章节的深入讲解,使学习者能够逐步了解并熟练运用VB.NET进行软件开发。 第一章:VB.NET入门 本章介绍VB.NET的基本概念和环境设置,包括安装Visual Studio IDE、创建第一个“Hello, World!”程序,以及...

    vb.net2005桌面便笺(系统托盘)

    总结来说,VB.NET 2005桌面便笺是一个综合运用了多种VB.NET特性和Windows API功能的示例程序,它展示了如何利用VB.NET进行桌面应用开发,包括透明背景的实现、注册表的读写、事件驱动编程以及系统托盘集成等技术。...

    .NET课程设计——通讯录管理系统

    《.NET课程设计——通讯录管理系统》是一次深入学习.NET框架和C#编程语言的实践项目,旨在提升学生对Windows程序设计的理解与应用能力。在这个系统中,开发者使用C#作为主要编程语言,构建了一个功能完备的通讯录...

    VB.NET控件使用实例

    本教程将深入探讨VB.NET中的控件使用,通过实例帮助你快速掌握Windows Forms编程的基础和进阶技巧。 1. **基础控件介绍** - **Label**:用于显示静态文本,不可编辑。 - **TextBox**:提供用户输入文本的区域,可...

    21天学通Visual Basic.NET

    在21天的学习计划中,本书将引导读者从基础到进阶,逐步理解并运用VB.NET进行软件开发。以下是根据标题和描述提炼出的一些关键知识点: 1. **Visual Basic.NET简介**:VB.NET是.NET框架下的一个面向对象的编程语言...

    asp.net学生管理系统

    通过DOM(Document Object Model)或LINQ to XML等API,可以方便地对XML数据进行读写操作,实现数据的持久化。 其次,TREE控件在系统中起到了关键的作用,它以树状结构展示了班级的层级关系。用户可以通过TREE控件...

    vb.net编的记事本

    【标题】"vb.net编的记事本"指的是使用Visual Basic .NET(简称VB.NET)编程语言开发的一个简单文本编辑器应用,类似于Windows系统自带的“记事本”程序。VB.NET是Microsoft .NET框架的一部分,它提供了一个直观的、...

    Visual Basic.NET应用教程——桌面和应用程序开发源码

    《Visual Basic.NET应用教程——桌面和应用程序开发》是一本深入探讨使用VB.NET进行软件开发的实践指南。...无论是对VB.NET的语法特性,还是对.NET框架的运用,都能从这些源码中获得深刻的体验和学习。

    visual studio.net 2008 c# 3.0

    - **集成开发环境(IDE)**:Visual Studio 2008提供了强大的代码编辑、调试和项目管理工具,支持多种.NET语言,包括C#。 - **WPF(Windows Presentation Foundation)**:用于构建具有丰富图形界面的应用程序,利用...

    Visual Studio .NET使用技巧手册

    《Visual Studio .NET使用技巧手册》是一本专为初学者设计的指南,旨在帮助读者深入理解和熟练运用Visual Studio .NET这一强大的开发环境。Visual Studio .NET是微软公司推出的集成开发环境(IDE),它集成了创建、...

    vb.net 2008 例子

    VB.NET 2008提供了处理文件和流的能力,本章将讲解如何读写文本文件、二进制文件,以及使用FileStream和StreamReader等类进行I/O操作。 第七章:异常处理 了解如何使用Try...Catch...Finally结构来捕获和处理运行时...

    C#.NET范例2

    本文将深入探讨“C#.NET范例2”中涉及的三个主要方面:系统编程、多媒体处理和数据库交互,通过这些实例来帮助你更好地理解和运用C#.NET。 首先,让我们来看“ch4系统”部分。这部分可能包含有关操作系统接口调用、...

    vb.net drivelistbox dirlistbox filelistbox控件使用

    理解并熟练运用这三个控件是开发涉及文件操作的Windows应用程序的基础。 1. **DriveListBox(驱动器列表框)** DriveListBox控件用于显示可用的计算机驱动器列表,包括硬盘、网络驱动器、USB驱动器等。你可以通过...

Global site tag (gtag.js) - Google Analytics