首页
社区
课程
招聘
[旧帖] 卸载驱动失败 帮忙看看哪里写错了 0.00雪花
发表于: 2016-2-13 01:06 2961

[旧帖] 卸载驱动失败 帮忙看看哪里写错了 0.00雪花

2016-2-13 01:06
2961
hSCM = NULL;
			hSCM=OpenSCManagerW(NULL, NULL, SC_MANAGER_ALL_ACCESS);
			if (hSCM != NULL)
			{
				MessageBoxW(hWnd, TEXT(""), TEXT("打开SCM"), 0);
				ScH_Service = NULL;
				ScH_Service=OpenService(hSCM,TEXT("Yservice"), SC_MANAGER_ALL_ACCESS);
				if (ScH_Service != NULL)
				{
					MessageBoxW(hWnd, TEXT(""), TEXT("打开服务"), 0);

					if (ControlService(ScH_Service, SERVICE_CONTROL_STOP, NULL))
					{
						MessageBoxW(hWnd, TEXT(""), TEXT("1"), 0);

					}
					else
					{
						dLastError=GetLastError();
						wsprintf(szbuffer,TEXT("%d"),dLastError);
						MessageBoxW(hWnd, szbuffer, szbuffer, 0);
					}
					if (DeleteService(ScH_Service))
					{
						MessageBoxW(hWnd, TEXT(""), TEXT("2"), 0);
					}
					
				}
				else
				{
					MessageBoxW(hWnd, TEXT(""), TEXT("打开服务失败"), 0);
				}
				CloseServiceHandle(hSCM);
			}
			break;


上面的代码 ControlService出错  GetLastError输出487    然后驱动还在系统中   谢谢各位大神

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 69
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
ERROR_INVALID_ADDRESS
487 (0x1E7)
Attempt to access invalid address.
2016-2-13 12:27
0
雪    币: 32
活跃值: (80)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
CloseServiceHandle(OpenService);
CloseServiceHandle(hSCM);
这样看看  行不
2016-2-17 19:13
0
雪    币: 38
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
参数错误  应该NULL引起的 我的你参考下
BOOL CDriverCtrl::Stop()
{
        SERVICE_STATUS ss;

        if (!ControlService(m_hService, SERVICE_CONTROL_STOP, &ss))  //  这里你的是NULL
        {
                m_dwLastError = GetLastError();
                return FALSE;
        }

        return TRUE;
}
2016-2-26 17:59
0
游客
登录 | 注册 方可回帖
返回
//