TOKEN_PRIVILEGES tp;
HANDLE hToken;
LUID luid;
LPTSTR machineName= NULL;
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,& hToken))
... {
return ;
}
if(!LookupPrivilegeValue(machineName,SE_SHUTDOWN_NAME,& luid))
... {
return;
}
tp.PrivilegeCount =1 ;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
tp.Privileges[0].Luid = luid;
AdjustTokenPrivileges(hToken,FALSE,&tp,sizeof (TOKEN_PRIVILEGES),NULL,NULL);
//InitiateSystemShutdown(_T("Jeff"),_T("由于你干了坏事,上帝要惩罚你,关闭你的机器"),60,TRUE,TRUE);
ExitWindowsEx(EWX_SHUTDOWN,EWX_FORCE);
HANDLE hToken;
LUID luid;
LPTSTR machineName= NULL;
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,& hToken))
... {
return ;
}
if(!LookupPrivilegeValue(machineName,SE_SHUTDOWN_NAME,& luid))
... {
return;
}
tp.PrivilegeCount =1 ;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
tp.Privileges[0].Luid = luid;
AdjustTokenPrivileges(hToken,FALSE,&tp,sizeof (TOKEN_PRIVILEGES),NULL,NULL);
//InitiateSystemShutdown(_T("Jeff"),_T("由于你干了坏事,上帝要惩罚你,关闭你的机器"),60,TRUE,TRUE);
ExitWindowsEx(EWX_SHUTDOWN,EWX_FORCE);