主要使用ExitWindowsEx函数,在NT系统中必须先提权一下
开发环境:Win7+VC6.0
思路 :获得本地进程句柄,新建令牌并赋予较高权限,通过进程句柄为进程赋予新令牌,重启操作
以下是自动重启代码:
#include <windows.h>
int main()
{
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
//取得系统版本
OSVERSIONINFO osvi;
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if(GetVersionEx(&osvi)== 0)
return false;
if(osvi.dwPlatformId == VER_PLATFORM_WIN32_NT)
{
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY, &hToken))