使用   NtShutdownSystem   可以强制关闭   Windows   系统。这个函数是众多的未归档的   Windows   NT/2000   Native   API   函数之一,它在关闭系统时不会事先通知系统服务程序和用户程序。行为很是粗鲁,除非迫不得已,最好不要使用这个函数。msgina.dll   中用到了这个函数。该函数由   ntdll.dll   输出,其原型如下: 
 NTSYSAPI 
 NTSTATUS 
 NTAPI 
 NtShutdownSystem(SHUTDOWN_ACTION); 
 SHUTDOWN_ACTION   结构定义: 
 typedef   enum   _SHUTDOWN_ACTION   { 
 ShutdownNoReboot, 
 ShutdownReboot, 
 ShutdownPowerOff 
 }SHUTDOWN_ACTION; 
 下面是一段使用该函数的例子代码: 
 
HANDLE hToken;
if (OpenProcessToken(GetCurrentProcess(),
TOKEN_QUERY|TOKEN_ADJUST_PRIVILEGES, &hToken))
{
TOKEN_PRIVILEGES tkp;
LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid);
tkp.PrivilegeCount = 1;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, NULL, 0);
CloseHandle(hToken);
}
NtShutdownSystem(ShutdownNoReboot);










