⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myregkey.cpp

📁 VC.net 的一些有用的技巧
💻 CPP
字号:
#include "StdAfx.h"
#include "MyRegKey.h"

CMyRegKey::CMyRegKey(void)
{
	m_hKey = NULL;
}

CMyRegKey::~CMyRegKey(void)
{
	RegClose();
}

LONG CMyRegKey::RegOpen(HKEY hKeyRoot,LPCTSTR pszPath)
{
	DWORD dw;
	m_sPath = pszPath;
	return RegCreateKeyEx(hKeyRoot,pszPath,0L,NULL,REG_OPTION_VOLATILE,KEY_ALL_ACCESS,NULL,&m_hKey,&dw);
} 

void CMyRegKey::RegClose()
{
	if(m_hKey)
	{
		RegCloseKey (m_hKey);
		m_hKey = NULL;
	}
} 

LONG CMyRegKey::RegWrite(LPCTSTR pszKey,DWORD dwVal)
{
	ASSERT(m_hKey);
	ASSERT(pszKey);
	return RegSetValueEx(m_hKey,pszKey,0L,REG_DWORD,(CONST BYTE *)&dwVal,sizeof(DWORD));
} 

LONG CMyRegKey::RegWrite(LPCTSTR pszKey,LPCTSTR pszData)
{
	ASSERT(m_hKey);
	ASSERT(pszKey);
	ASSERT(pszData);
	ASSERT(AfxIsValidAddress(pszData,strlen(pszData),FALSE));
	return RegSetValueEx(m_hKey,pszKey,0L,REG_SZ,(CONST BYTE *)pszData,strlen (pszData)+1);
} 

LONG CMyRegKey::RegWrite(LPCTSTR pszKey,const BYTE *pData,DWORD dwLength)
{
	ASSERT(m_hKey);
	ASSERT(pszKey);
	ASSERT(AfxIsValidAddress (pData,dwLength,FALSE));
	ASSERT(pData&&dwLength>0);
	ASSERT(AfxIsValidAddress(pData,dwLength,FALSE));
    return RegSetValueEx(m_hKey,pszKey,0L,REG_BINARY,pData,dwLength);
}

LONG CMyRegKey::RegRead (LPCTSTR pszKey,DWORD& dwVal)
{
	ASSERT(m_hKey);
	ASSERT(pszKey);
    DWORD dwType;
	DWORD dwSize = sizeof (DWORD);
	DWORD dwDest;
	LONG LRet = RegQueryValueEx(m_hKey,(LPSTR)pszKey,NULL,&dwType,(BYTE *)&dwDest,&dwSize);
	if(LRet==ERROR_SUCCESS)
		dwVal = dwDest;
	return LRet;
} 

LONG CMyRegKey::RegRead (LPCTSTR pszKey,CString& sVal)
{
	ASSERT(m_hKey);
	ASSERT(pszKey);
    DWORD dwType;
	DWORD dwSize = 200;
	char string[200];
    LONG IReturn = RegQueryValueEx(m_hKey,(LPSTR)pszKey,NULL,&dwType,(BYTE *)string,&dwSize);
	if(IReturn==ERROR_SUCCESS)
		sVal = string;
	return IReturn;
} 

LONG CMyRegKey::RegRead (LPCTSTR pszKey,BYTE * pData,DWORD& dwLen)
{
	ASSERT(m_hKey);
	ASSERT(pszKey);
	DWORD dwType;
	return RegQueryValueEx(m_hKey,(LPSTR)pszKey,NULL,&dwType,pData,&dwLen);
} 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -