您的位置:首页 > 其它

如何用程序加载/卸载sys驱动

2009-04-16 15:07 555 查看
保存下 省得下次再找 sys文件跟程序放在同个目录下 如果生产的sys名为test.sys 那么调用方式就是 load_sysfile("test") 不需要加扩展名;卸载sys也是类似的调用过程, unload_sys("tes");

1 bool unload_sys(char* theDriverName){

2       char aPath[1024];

3       char aCurrentDirectory[515];

4       SERVICE_STATUS SvrSta;

5       SC_HANDLE sh = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS);

6       if(!sh)

7       {

8             return false;

9       }

GetCurrentDirectory( 512, aCurrentDirectory);

_snprintf(aPath,

1022,

"%s\\%s.sys",

aCurrentDirectory,

theDriverName);

//MessageBox(NULL,aPath,"",0);

SC_HANDLE hService=    OpenService(sh,theDriverName, SERVICE_STOP | DELETE);

if (hService==NULL){

CloseServiceHandle(sh);

return false;

}

if (!ControlService(hService, SERVICE_CONTROL_STOP, &SvrSta)){

}else{

}

DeleteService(hService);

CloseServiceHandle(hService);

CloseServiceHandle(sh);

return true;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: