精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>C/C++>>一般性编程问题>>Re:请问如何通过程序重启WIN2000系统

主题:Re:请问如何通过程序重启WIN2000系统
发信人: chenyk()
整理人: wenbobo(2002-12-24 09:27:38), 站内信件
【 在 snake2401 的大作中提到:】
:我想在程序实现重启win2000系统,可是ExitWindowsEx()总报错。我看了一下帮助需要AdjustTokenPrivileges(),可是不知如何去用。请哪位大侠给个例子
:
:多谢了
:......
  HANDLE hProcess,hToken;
TOKEN_PRIVILEGES Privileges;
LUID luid;
hProcess=GetCurrentProcess();
OpenProcessToken(hProcess,TOKEN_ADJUST_PRIVILEGES,&hToken);
Privileges.PrivilegeCount=1;
LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&luid);
Privileges.Privileges[0].Luid=luid;
Privileges.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken,FALSE,&Privileges,NULL,NULL,NULL);
ExitWindowsEx(EWX_REBOOT,0);

[关闭][返回]