用c编一个使windows关机的程序.txt

来自「用c编一个使windows关机的程序,很简短吧。不过还真的能关机哟」· 文本 代码 · 共 38 行

TXT
38
字号
用c编一个使windows关机的程序
#include <windows.h>
int main()
{
	OSVERSIONINFO stOSVI;
    ZeroMemory(&stOSVI , sizeof ( OSVERSIONINFO )) ;
    stOSVI.dwOSVersionInfoSize = sizeof ( OSVERSIONINFO ) ;
    if (!GetVersionEx ( &stOSVI )) return;
    
    if ( ( VER_PLATFORM_WIN32_NT == stOSVI.dwPlatformId ) &&
         ( 4 <= stOSVI.dwMajorVersion  ) )
    {
		HANDLE hToken;  
		TOKEN_PRIVILEGES tkp;  		
		if (!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))  
			return;
		// Get the LUID for the shutdown privilege.  
		LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid);  

		tkp.PrivilegeCount = 1; // one privilege to set  
		tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;  
		AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,(PTOKEN_PRIVILEGES)NULL, 0);  
		
		if (GetLastError() != ERROR_SUCCESS)  
			return;

		if (!ExitWindowsEx(EWX_SHUTDOWN | EWX_FORCE|EWX_POWEROFF, 0))  
			return;
	
    }
    else//WIN9X
    {
		ExitWindowsEx(EWX_SHUTDOWN | EWX_FORCE | EWX_POWEROFF, 0);// 关机
  
    }
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?