监控注册表的通用结构
1、变量定义
2、初始化
3、创建监控线程
4、线程函数
5.线程结束
1、变量定义
HANDLE hStopEvent;
HKEY *hkDriversList;
HANDLE m_hdmonitorthread;//注册表改变监控线程
HANDLE *hFindList;
//监控线程相关的变量和函数
BOOL g_bReturn = FALSE;
DWORD g_dwThreadID;
void WINAPI user_regmonitor();
2、初始化
3、创建监控线程
hStopEvent = CreateEvent(NULL, 0, 0, NULL);//创建事件对象
m_hdmonitorthread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)(&user_regmonitor),NULL, 0, &g_dwThreadID);
4、线程函数
5.线程结束
void CDlgRegMonitorDlg::OnBnClickedStopRegMonitor()
{
g_bReturn = TRUE;
//WaitForSingleObject(g_hOnline,INFINITE);
CloseHandle(m_hdmonitorthread);
}