麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

用戶(hù)層加載驅(qū)動(dòng) 卸載驅(qū)動(dòng)源碼

2019-11-14 12:56:36
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
#include < Winsvc.h>CString s1 = TEXT("MyDriver1.sys"); //lpServiceNameCString s2 = TEXT("C://MyDriver1.sys");//lpPathNameBOOL CMFCapplication1Dlg::jiazaiqudong(LPCTSTR lpServiceName, LPCTSTR lpPathName)//加載驅(qū)動(dòng){	SC_HANDLE ScManagerHandle = NULL;	SC_HANDLE sc_CreateHanle = NULL;	ScManagerHandle = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_access);//建立了一個(gè)連接到服務(wù)控制管理器,并打開(kāi)指定的數(shù)據(jù)庫(kù)	if (NULL == ScManagerHandle)	{		TRACE("OpenSCManager fail");		UpdateData(FALSE);		return FALSE;	}	sc_CreateHanle = CreateService(		ScManagerHandle,		lpServiceName,//用于創(chuàng)建登記數(shù)據(jù)庫(kù)中的關(guān)鍵字		lpServiceName,//用于用戶(hù)界面標(biāo)識(shí)服務(wù)		SC_MANAGER_ALL_ACCESS,//指定服務(wù)返回類(lèi)型		SERVICE_KERNEL_DRIVER,//加載類(lèi)型為:驅(qū)動(dòng)類(lèi)型		SERVICE_DEMAND_START,//指定何時(shí)啟動(dòng)服務(wù)		SERVICE_ERROR_IGNORE,//忽略異常		lpPathName,//加載驅(qū)動(dòng)的路徑		NULL,		NULL,		NULL,		NULL,		NULL		);	if (sc_CreateHanle == NULL)	{		if (ERROR_SERVICE_EXISTS == GetLastError())		{			m_FilePath = "驅(qū)動(dòng)已經(jīng)加載";			UpdateData(FALSE);			return FALSE;		}		sc_CreateHanle = OpenService(ScManagerHandle, lpServiceName, SC_MANAGER_ALL_ACCESS);		if (sc_CreateHanle == NULL)			return FALSE;	}	StartService(sc_CreateHanle, NULL, NULL);	m_FilePath = "驅(qū)動(dòng)加載成功";	UpdateData(FALSE);	CloseServiceHandle(sc_CreateHanle);	CloseServiceHandle(ScManagerHandle);	return TRUE;}BOOL CMFCApplication1Dlg::xiezaiqudong(LPCTSTR lpServiceName)//卸載驅(qū)動(dòng)程序  {		BOOL bRet = FALSE;		SC_HANDLE hServiceMgr = NULL;//SCM管理器的句柄  		SC_HANDLE hServiceDDK = NULL;//NT驅(qū)動(dòng)程序的服務(wù)句柄  		SERVICE_STATUS SvrSta;		//打開(kāi)SCM管理器  		hServiceMgr = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);		if (hServiceMgr == NULL)		{			//帶開(kāi)SCM管理器失敗  			PRintf("OpenSCManager() Faild %d ! /n", GetLastError());			bRet = FALSE;			goto BeforeLeave;		}		else		{			//帶開(kāi)SCM管理器失敗成功  			printf("OpenSCManager() ok ! /n");		}		//打開(kāi)驅(qū)動(dòng)所對(duì)應(yīng)的服務(wù)  		hServiceDDK = OpenService(hServiceMgr, lpServiceName, SERVICE_ALL_ACCESS);		if (hServiceDDK == NULL)		{			//打開(kāi)驅(qū)動(dòng)所對(duì)應(yīng)的服務(wù)失敗  			printf("OpenService() Faild %d ! /n", GetLastError());			bRet = FALSE;			goto BeforeLeave;		}		else		{			printf("OpenService() ok ! /n");		}		//停止驅(qū)動(dòng)程序,如果停止失敗,只有重新啟動(dòng)才能,再動(dòng)態(tài)加載。    		if (!ControlService(hServiceDDK, SERVICE_CONTROL_STOP, &SvrSta))		{			printf("ControlService() Faild %d !/n", GetLastError());		}		else		{			//打開(kāi)驅(qū)動(dòng)所對(duì)應(yīng)的失敗  			printf("ControlService() ok !/n");		}		//動(dòng)態(tài)卸載驅(qū)動(dòng)程序。    		if (!DeleteService(hServiceDDK))		{			//卸載失敗  			printf("DeleteSrevice() Faild %d !/n", GetLastError());		}		else		{			//卸載成功  			printf("DelServer:deleteSrevice() ok !/n");		}		bRet = TRUE;	BeforeLeave:		//離開(kāi)前關(guān)閉打開(kāi)的句柄  		if (hServiceDDK)		{			CloseServiceHandle(hServiceDDK);		}		if (hServiceMgr)		{			CloseServiceHandle(hServiceMgr);		}		return bRet;		return TRUE;}
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 成人免费一区二区三区在线观看 | 亚洲欧美aⅴ | 日本在线免费观看视频 | 久久狂草| 亚洲啊v在线观看 | 9191色| 成人免费观看49www在线观看 | 久久伊 | 一本色道久久综合亚洲精品图片 | 亚洲亚色 | 国产一国产一级毛片视频 | 久久久新| 久色亚洲 | 日韩视频在线一区二区三区 | 作爱在线观看 | 国产91小视频在线观看 | 成人不卡一区二区 | 免费一级特黄欧美大片勹久久网 | 成人一级黄色片 | 国产精品免费久久久久 | 欧美 中文字幕 | 国产精选电影免费在线观看 | 久久久久一本一区二区青青蜜月 | av免费在线不卡 | 精品一区二区三区网站 | 综合图区亚洲 | 久久成人精品视频 | 久久99国产伦子精品免费 | 日韩午夜一区二区三区 | 久在线播放 | 91成人午夜性a一级毛片 | 欧美福利视频一区二区 | sesee99| 免费视频观看 | 免费国产在线视频 | 在线播放一区二区三区 | 李宗瑞国产福利视频一区 | 久久精品成人影院 | 99热久草 | 毛片视频免费播放 | 日韩视频高清 |