AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > VC编程

有关注册表API函数

51自学网 2015-08-30 http://www.wanshiok.com

 

  4·RegDeleteKey()
  原形:LONG RegDeleteKey(
        HKEY hKey,     // 已打开的键的句柄
        LPCTSTR lpSubKey  // 要删除的子键或路径,传如""将删除key本身
       );
  返回值:不成功返回非0,成功返回ERROR_SUCCESS
  该函数用来删除注册表中的一个键值的。在用此函数时需要注意98与NT的差异。在NT中在删除一个键之前,要求必须删除所有子键,需要从下向上递归删除所有子键,而WINDOWS98没有他那么复杂,只要删除键及其所有子键就可以啦。

  5·RegQueryValue()和RegQueryValueEx()
  原形:LONG RegQueryValueEx(
        HKEY hKey,      // 已打开的键的句柄
        LPTSTR lpValueName, // 要查询值的名称,传如""为查询键下的默认值
        LPDWORD lpReserved, // 保留,为0
        LPDWORD lpType,   // 查询的类型
        LPBYTE lpData,    // 数据存放的地址
        LPDWORD lpcbData   // 数据长度+1
      );
  返回值:不成功返回非0,成功返回ERROR_SUCCESS
  解释:读取某子键下特定名称的值。
  例子
   CString m_strQ;//用来存放查询来的字符串值 
   DWORD m_dwCount;//记录字符串的长度+1(包括NULL字符) 
   ::RegQueryValueEx(m_hkey,"",0,NULL,NULL,&m_dwCount);//先查询出字节空间  
   ret1=(::RegQueryValueEx
        (m_hkey,"",0,NULL,(unsigned char *)m_strQ.GetBuffer(m_dwCount),&m_kk));
   m_strQ.ReleaseBuffer();
   MessageBox(m_strQ);

  6·RegSetValue()和RegSetValueEX()
  原形:LONG RegSetValueEx(
        HKEY hKey,      // 已打开的键的句柄
        LPCTSTR lpValueName, // 要查询值的名称,传如""为查询键下的默认值
        DWORD Reserved,   // 保留
        DWORD dwType,    // 变量的类型
        CONST BYTE *lpData, // 变量数据的地址
        DWORD cbData     // 变量的长度
      );
  返回值:不成功返回非0,成功返回ERROR_SUCCESS
  解释:设置某子键下特定名称的值。

  7·RegEnumValue()
  原形:LONG RegEnumValue(
        HKEY hKey,       // 要查询的已打开的键的句柄
        DWORD dwIndex,     // 读取名称的索引号
        LPTSTR lpValueName,   // 返回所读取的名称
        LPDWORD lpcbValueName, // 返回读取名称的长度,不含chr(0)
        LPDWORD lpReserved,   // 保留,为0
        LPDWORD lpType,     // 返回所读取的数据类型
        LPBYTE lpData,     // 返回所读取的数据
        LPDWORD lpcbData    // 返回所读取的数据长度
     );
  返回值:不成功返回非0,成功返回ERROR_SUCCESS
  解释:列出某Key的所有名称的值,变化索引即可遍历整个键下的名称和数据。

  8·RegDeleteValue()
  原形:LONG RegDeleteValue(
        HKEY hKey,      // 要删除的键的句柄
        LPCTSTR lpValueName  // 要删除的名称
      );
  返回值:不成功返回非0,成功返回ERROR_SUCCESS
  解释:删除某Key的某一名称

  9·RegEnumKey()和RegEnumKeyEx()
  原形:LONG RegEnumKeyEx(
        HKEY hKey,     // 要列举的键的句柄
        DWORD dwIndex,   // 索引
        LPTSTR lpName,   // 子键的名称
        LPDWORD lpcbName,  // 子键名称的长度
        LPDWORD lpReserved, // 保留
        LPTSTR lpClass,   // address of buffer for class string
        LPDWORD lpcbClass, // address for size of class buffer
        PFILETIME lpftLastWriteTime 
           // address for time key last written to
      );
  返回值:不成功返回非0,成功返回ERROR_SUCCESS
  返回注册表键及其子键的详细信息。

 
 
说明
:本教程来源互联网或网友上传或出版商,仅为学习研究或媒体推广,wanshiok.com不保证资料的完整性。

上一篇:用VC++6.0的Sockets API实现一个聊天室程序  下一篇:如何用非对称密码算法制作共享软件的注册码