如何自我提升至較高的權限層級,在 UAC 應用程式

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:981778
簡介
本文將說明可供下載的全部合一架構程式碼範例。程式碼範例被與以使用者帳戶控制 (UAC),Windows Vista 中和較新版本的 Windows 作業系統的安全性元件。完全啟用 UAC,互動式的系統管理員通常會執行以最少的使用者權限。這個程式碼範例會示範如何自我提升至較高的權限層級的應用程式,藉由透過同意 UI 的明確同意。

難易度

下載資訊

要下載此程式碼範例,請按一下下列連結:

技術概觀

UAC 已採用 Windows Vista。完全啟用 UAC,互動式的系統管理員通常會執行以最少的使用者權限。不過,互動式的系統管理員可以自我提高權限藉由明確許可就使用同意的 UI。互動式的系統管理員執行系統管理工作,包括安裝軟體和驅動程式,變更全系統設定、 檢視或變更其他的使用者帳戶,及執行系統管理工具。

這個程式碼範例會顯示三個流行程式語言 (Visual C++,視覺 C# 視覺化 Baisc.NET) 中的下列技術的各點:
  • 如何在工作需要提高權限的使用者介面上顯示 UAC 保護盾圖示。
  • 如何自我提高權限目前的處理序。
  • 如何將它啟動時,自動提高至程序。

示範

請依照下列步驟執行的這個 UAC 的程式碼範例示範:
  1. 在成功建置範例專案在 Visual Studio 2008年中的之後,您會收到下列的應用程式檔案,視您所使用的程式語言而定:
    • CppUACSelfElevation.exe
    • CSUACSelfElevation.exe
    • VBUACSelfElevation.exe
  2. 在 Windows Vista 或 Windows 7 的系統具有完整啟用 UAC,以受保護的系統管理員身分執行應用程式。應用程式應該在主對話方塊中會顯示下列內容:
    主對話方塊
    附註上沒有 UAC 保護盾圖示自我提高權限] 按鈕。
  3. 按一下 [自我提高權限] 按鈕。然後,您會看到下列的同意 UI:
    同意 UI
  4. 按一下 [ ]來核准提高權限。然後,原始的應用程式重新啟動,以提高權限的系統管理員身分執行。
  5. 關閉應用程式。
注意如需有關如何建立範例應用程式的詳細資訊,請參閱下載套件所隨附的 Readme.txt 檔案。

技術類別

  • 安全性

語言

這個程式碼範例包含下列的程式語言。
語言專案名稱
.NET Visual C++CppUACSelfElevation
Visual C#CSUACSelfElevation
Visual Basic.NETVBUACSelfElevation

先決條件

  • 在 Windows Vista 或更新版本的 Windows 作業系統中,您必須執行這個程式碼範例。
  • 這個範例應用程式是由使用 Visual Studio 2008年與安裝的 Service Pack 1 建立的。

標記

  • UAC
其他相關資訊

全部合一程式碼架構是什麼?

全部合一程式碼架構使用不同的程式設計語言程式碼範例,說明大部分的 Microsoft 開發技術。每個程式碼範例是仔細選取、 所組成,並加以記錄,以顯示程式碼的常見案例。如需有關全部合一程式碼架構的詳細資訊,請造訪下列的全部合一程式碼架構的網站:

如何尋找更多的全部合一程式碼架構範例

若要尋找更多的全部合一程式碼架構範例,搜尋"kbcodefx",以及相關的關鍵字,在 Microsoft 支援網站。或者,請造訪下列 Microsoft 網站:
参考
如需詳細資訊,請造訪下列 Microsoft 開發人員網路 (MSDN) 網站:
快速發行的免責聲明
Microsoft 公司和/或其供應商不提供任何保證有關適用性、 可靠性或資訊和相關的圖形,此處所含的正確性。所有這類的資訊和相關的圖形會提供 「 現狀 」 不提供任何形式之擔保。Microsoft 和/或其供應商不擔保並就此資訊和相關的圖形,包括所有默示瑕疵責任擔保或適售性、 適合某特定用途、 精良、 標題以及未侵權的條件。您特別同意,在沒有事件應該 Microsoft 和/或其供應商對於而導致之任何直接、 間接、 代價極高,附隨性、 特殊、 衍生性損害或任何損害皆不包括但不限於,使用、 資料或利益,損失的損害因使用或無法使用本文件的資訊和所包含的相關的圖形以連接任何方式是否根據合約、 侵權行為、 過失、 無過失責任或其他的方式,即使 Microsoft 或其供應商的任何已被告知損害的可能性。
內容

文章識別碼:981778 - 最後檢閱時間:01/26/2016 18:34:00 - 修訂: 1.0

Microsoft Visual Studio 2008 Service Pack 1, Microsoft Visual Studio 2008 Academic Edition, Microsoft Visual Studio 2008 Professional Edition, Microsoft Visual Studio 2008 Standard Edition, Microsoft Visual Studio 2008 Team Edition for Database Professionals, Microsoft Visual Studio 2008 Team Edition for Software Architects, Microsoft Visual Studio 2008 Team Edition for Software Developers, Microsoft Visual Studio 2008 Team Suite

  • kbexpertiseadvanced kbsurveynew kbinfo kbnomt kbrapidpub kbcodefx atdownload kbmt KB981778 KbMtzh
意見反應