注册表编程

来源:互联网 发布:淘宝电子积木 编辑:程序博客网 时间:2024/05/29 04:35

1、写注册表

OnRegWrite()

{

   HKEY hKey;  //定义一个注册表项句柄

  RegCreateKey(HKEY_LOCAL_MACHINE,"Software\\chenchong\\admin",&hKey);  //一般写到HKEY_LOCAL_MACHINE下面。创建注册表项,如果表项已经存在,则打开。

  RegSetValue(hKey,NULL,REG_SZ,"zhangsan",strlen("zhanshan"))'  //写入注册表。第二个参数为NULL,表示设置默认值。后面三个参数依次表示类型、具体数据、大小。

 RegCloseKey(hKey);

}


2、读注册表

OnRegRead()

{

Long length; 接收读取到的数据长度,包括空字符。

RegQueryValue(HKEY_LOCAL_MACHINE,"Software\\chenchong\\admin",NULL,&length); 获得数据长度。

char* pBuf = new char[length]; //已包含空字符,所以不用+1

RegQueryValue(HKEY_LOCAL_MACHINE,"Software\\chenchong\\admin",pBuf,&length); 获得数据存放在Buf中。

}


3、如何写入整形数据

DWORD dwAge = 30;

RegSetValueEx(hKey,"age",0,REG_DWORD,(CONST BYTE*)&dwAge,4); //age,值名称;REG_DWORD,类型;4表示大小。


4、读取整形数据。

RegOpenKey(HKEY_LOCAL_MACHINE,"Software\\chenchong\\admin",&hKey);

DWORD dwType; //指定数据类型

DWORD dwlength; //长度

DWORD dwAge; //接收数据

RegQueryValueEx(hKey,"age",0,&dwType,(LPBYTE)&dwAge,&dwlength);