程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 化繁為簡系列原創軟件,簡系列原創

化繁為簡系列原創軟件,簡系列原創

編輯:C++入門知識

化繁為簡系列原創軟件,簡系列原創


快速關機Shutdown,含源碼。

公司公用的筆記本電腦實在太爛,不知從什麼時候開始關機永遠都關不了,一直停留在“關閉系統中……”。忍無可忍之下,自己寫了一個快速關機程序。

下載:

Shutdown_for_WinXP.rar

Shutdown_for_Win7-32bit.rar

源碼:

BOOL NtExitWindows(UINT uFlags, DWORD dwReason)
{
    HANDLE hToken; 
    TOKEN_PRIVILEGES tkp; 
    
    if (!OpenProcessToken(GetCurrentProcess(), 
        TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) 
        return FALSE; 
    
    if (!LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, 
                                &tkp.Privileges[0].Luid))
    {
        CloseHandle(hToken);
        return FALSE;
    }
    
    tkp.PrivilegeCount = 1;  // one privilege to set    
    tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; 
    if (!AdjustTokenPrivileges(hToken, FALSE, &tkp, sizeof(TOKEN_PRIVILEGES), 
                                (PTOKEN_PRIVILEGES)NULL, (PDWORD) NULL))
    {
        CloseHandle(hToken);
        return FALSE;
    }
    
    CloseHandle(hToken);
    return ExitWindowsEx(uFlags, dwReason);
}

 

下載:

Shutdown_for_WinXP.rar

Shutdown_for_Win7-32bit.rar

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved