91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 2.99MB
    文件類型: .7z
    金幣: 1
    下載: 0 次
    發布日期: 2023-08-16
  • 語言: 其他
  • 標簽: win7x64??tp??

資源簡介

可以過簡單的TP游戲,自己放棄的一個版本,具體可以過那些需要自己去測試

資源截圖

代碼片段和文件信息

#include?“stdafx.h“
#include?“Driver.h“
#include?
#include?
#include?

#include?“Global.h“

#pragma?comment(lib?“setupapi.lib“)
#pragma?comment(lib?“newdev.lib“)
CDriver::CDriver()
{
}


CDriver::~CDriver()
{
}

CString??CDriver::installDvr()
{
CString?ret=NULL;
if?(NULL?!=?m_hSerMgr)
{
ret=“狀態:因為驅動服務已經存在,所以驅動服務安裝失敗!\n“;
return?ret;
}
HANDLE?hToken;
OpenProcessToken(GetCurrentProcess()?TOKEN_ADJUST_PRIVILEGES?&hToken);
AdjustProcessPrivilege(hToken?SE_DEBUG_NAME);
m_hSerMgr?=?OpenSCManagerA(NULL?NULL?SC_MANAGER_ALL_ACCESS);
if?(m_hSerMgr==NULL)
{
ret=“狀態:驅動服務安裝失敗!\n“;
return?ret;
}
m_hServer?=?CreateServiceA(m_hSerMgr?m_strSysFileName?m_strSysFileName?SERVICE_ALL_ACCESS?\
SERVICE_KERNEL_DRIVER?SERVICE_DEMAND_START?SERVICE_ERROR_NORMAL?m_strSysFilePath?NULL?NULL?\
NULL?NULL?NULL);
if?(NULL?==?m_hServer)
{
DWORD?dwRet?=?GetLastError();
if?(dwRet?!=?ERROR_IO_PENDING?&&?dwRet?!=?ERROR_SERVICE_EXISTS)
{
if?(!StartServiceA(m_hServer?0?0)){
DeleteService(m_hServer);?//啟動失敗、則刪除已經創建的服務
}
if?(NULL?!=?m_hSerMgr)
{
CloseServiceHandle(m_hSerMgr);
m_hSerMgr?=?NULL;
}

ret?=?“狀態:驅動服務安裝失敗!\n“;
return?ret;
}
m_hServer?=?OpenServiceA(m_hSerMgr?m_strSysFileName?SERVICE_ALL_ACCESS);
if?(NULL?==?m_hServer)
{
ret=“狀態:因為驅動服務已經存在,所以驅動服務安裝失敗!\n“;
return?ret;
}
}
else
{
ret?=?“狀態:驅動服務安裝成功!\n“;
}
return?ret;
}

CString?CDriver::startDvr()
{
CString?ret?=?NULL;
if?(NULL?==?m_hSerMgr?&&?NULL?==?m_hServer)
{
ret=“狀態:啟動驅動失敗!\n“;
return?ret;
}
if?(!StartServiceA(m_hServer?NULL?NULL))
{
DWORD?dwRet?=?GetLastError();
if?(dwRet?!=?ERROR_IO_PENDING?&&?dwRet?!=?ERROR_SERVICE_ALREADY_RUNNING)
{
ret?=?“狀態:啟動驅動失敗!\n“;
return?ret;
}
else
{
ret?=?“狀態:因為驅動服務已經啟動,所以驅動服務啟動失敗!\n“;
return?ret;
}
}
else
{
ret?=?“狀態:驅動服務啟動成功!\n“;
}
return?ret;
}
CString?CDriver::stopDvr()
{
CString?ret?=?NULL;
if?(NULL?==?m_hSerMgr?&&?NULL?==?m_hServer)
{
ret=“狀態:因為驅動服務沒有啟動,所以驅動服務停止失敗!\n“;
return?ret;
}
SERVICE_STATUS?stSerStatus?=?{?0?};
if?(!ControlService(m_hServer?SERVICE_CONTROL_STOP?&stSerStatus))
{
ret?=?“狀態:因為驅動服務沒有啟動,所以驅動服務停止失敗!\n“;
return?ret;
}
else
{
ret?=?“狀態:驅動服務停止成功!\n“;
}
return?ret;
}
CString?CDriver::unloadDvr()
{
CString?ret?=?NULL;
if?(NULL?==?m_hSerMgr?&&?NULL?==?m_hServer)
{
ret=“狀態:打開驅動服務失敗,可能該驅動服務不存在!\n“;
return?ret;
}
if?(!DeleteService(m_hServer))
{
ret=“狀態:驅動服務卸載失敗!\n“;
return?ret;
}
else
{
CloseServerHandle();
ret?=?“狀態:驅動服務卸載成功!\n“;
}
return?ret;
}

void?CDriver::CloseServerHandle()
{
if?(NULL?!=?m_hServer)
{
CloseServiceHandle(m_hServer);
m_hServer?=?NULL;
}
if?(NULL?!=?m_hSerMgr)
{
CloseServiceHandle(m_hSerMgr);
m_hSerMgr?=?NULL;
}
}

評論

共有 條評論