-
-
[求助][讨论]请教大家一下远程关机的问题?谢谢指点和讨论
-
发表于:
2006-8-31 14:29
4626
-
[求助][讨论]请教大家一下远程关机的问题?谢谢指点和讨论
大家好,无意中看到了InitiateSystemShutdown这个函数,看它的意思是可以实现远程关机,于是我在我机房的局域网中想关掉旁边的一个电脑
代码如下:
void CTestDlg::OnButton1()
{
// TODO: Add your control notification handler code here
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
//得到进程权标
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
{
MessageBox("Wrong1");
return;
}
//得到关机的特权的LUID
LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid);
tkp.PrivilegeCount = 1;//设置一个特权
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
//得到进程关机的特权
BOOL bOK = AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0);
//不应该只是测试AdjustTokenPrivileges的返回值
if (!bOK)
{
MessageBox("Wrong2");
return;
}
bOK = InitiateSystemShutdown("\\\\211.71.74.133",//不知道\\\\这样写对不对?
TEXT("Hello"), 5, TRUE, TRUE
);
if (!bOK)
{
MessageBox("Wrong3");
return ;
}
}
我机房的机子都是XP,为什么我的程序老不成功啊
我自己试着调试了一下,老在InitiateSystemShutdown这个函数执行的时候说“找不到网络路径”为什么啊?请各位看雪高人探讨解答
红火蚁拜谢
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!