www.pudn.com > IPServer.rar > ToolReg.cpp


// ToolReg.cpp: implementation of the CToolReg class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#include "stdafx.h" 
#include "ToolReg.h" 
 
#ifdef _DEBUG 
#undef THIS_FILE 
static char THIS_FILE[]=__FILE__; 
#define new DEBUG_NEW 
#endif 
 
 
#define	HIK_REGPATH		_T("softWare\\IPServer") 
 
////////////////////////////////////////////////////////////////////// 
// Construction/Destruction 
////////////////////////////////////////////////////////////////////// 
 
CToolReg::CToolReg() 
{ 
	m_bInitOK = FALSE; 
	if(ERROR_SUCCESS!=m_crHikSoftware.Open(HKEY_CURRENT_USER,HIK_REGPATH)) 
	{ 
		if(ERROR_SUCCESS!=m_crHikSoftware.Create(HKEY_CURRENT_USER,HIK_REGPATH)) 
			return; 
	} 
 
	m_bInitOK = TRUE; 
} 
 
CToolReg::~CToolReg() 
{ 
	if (m_crHikSoftware.m_hKey) 
		m_crHikSoftware.Close(); 
} 
 
int	CToolReg::RegSetAppPath(CString spath) 
{ 
	if (!m_bInitOK) 
		return -1; 
 
	m_crHikSoftware.SetValue(spath, _T("AppPath")); 
 
	return 0; 
} 
 
int CToolReg::RegGetAppPath(CString * pspath) 
{ 
	char cTemp[256]; 
	DWORD dTemp=256; 
 
	if (!m_bInitOK) 
		return -1; 
 
	if (ERROR_SUCCESS==m_crHikSoftware.QueryValue(cTemp,_T("AppPath"),&dTemp)) 
	{ 
		//TRACE("AppPath=%s\n",cTemp); 
		(*pspath).Format("%s",cTemp); 
	}else 
	{ 
		return -1; 
	} 
 
	return 0; 
} 
 
int CToolReg::RegSetDftUser(CString susername, CString suserid,DWORD dwusertype) 
{ 
	if (!m_bInitOK) 
		return -1; 
 
	m_crHikSoftware.SetValue(susername, _T("AppUserName")); 
	m_crHikSoftware.SetValue(suserid, _T("AppUserID")); 
	m_crHikSoftware.SetValue(dwusertype,_T("AppUserType")); 
	return 0; 
} 
 
int CToolReg::RegGetDftUser(CString *susername, CString *suserid,LONG *lUsertype) 
{ 
	if (!m_bInitOK) 
		return -1; 
 
	char cTemp[256]; 
	DWORD dTemp=256; 
 
	if (ERROR_SUCCESS==m_crHikSoftware.QueryValue(cTemp,_T("AppUserName"),&dTemp)) 
	{ 
		susername->Format("%s",cTemp); 
	}else 
	{ 
		*susername = ""; 
	} 
 
	if (ERROR_SUCCESS==m_crHikSoftware.QueryValue(cTemp,_T("AppUserID"),&dTemp)) 
	{ 
		suserid->Format("%s",cTemp); 
	}else 
	{ 
		*suserid = ""; 
	} 
	if(ERROR_SUCCESS==m_crHikSoftware.QueryValue(dTemp,_T("AppUserType"))) 
	{ 
		*lUsertype = dTemp; 
	}else 
		*lUsertype = 8; 
 
	return 0; 
} 
 
int CToolReg::RegSetDftReboot(BOOL breboot) 
{ 
	if (!m_bInitOK) 
		return -1; 
 
	if(breboot) 
		m_crHikSoftware.SetValue(_T("1"), _T("BReboot")); 
	else 
		m_crHikSoftware.SetValue(_T("0"), _T("BReboot")); 
 
	return 0; 
} 
 
int CToolReg::RegGetDftReboot(BOOL * pbreboot) 
{ 
	if (!m_bInitOK) 
		return -1; 
 
	char cTemp[256]; 
	DWORD dTemp=256; 
	CString stemp; 
 
	if (ERROR_SUCCESS==m_crHikSoftware.QueryValue(cTemp,_T("BReboot"),&dTemp)) 
	{ 
		stemp.Format("%s",cTemp); 
		if(stemp=="1") 
		{ 
			*pbreboot = TRUE; 
		}else 
		{ 
			*pbreboot = FALSE; 
		} 
 
		return 0; 
	}else 
	{ 
 
		*pbreboot = FALSE; 
		return 0; 
	} 
 
	return 0; 
}