如何將我的應用程式配置為自動以管理員身份運行?

如何將我的應用程式配置為自動以管理員身份運行?

我使用 Winrar SFX 功能建立了一個修補程式文件,其中包含可執行檔。
執行 SFX 檔案並提取結束後,我的可執行檔將永遠不會運行,因為它沒有管理員權限。我想知道如何透過某種程式設計方式(如批次檔)授予管理員對該檔案的存取權限。

我知道我可以右鍵單擊它,轉到“屬性”,選擇“相容性”選項卡,然後勾選“以管理員身份執行”框。

問題是下載該補丁的用戶不知道它(並且我的exe僅在您右鍵單擊它並選擇“以管理員身份打開”時運行,否則它將永遠不會打開也不會顯示UAC彈出視窗)。

我嘗試過一些方法,例如“電梯跑步者(提升我)”等,但我實際上正在尋找比這更簡單的方法。
我只需要讓exe始終以管理員身份運行即可。

答案1

你需要做的是嵌入一個應用清單進入EXE。

  1. 將以下內容儲存為名為的文字文件應用程式.exe清單:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
        <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
            <security>
                <requestedPrivileges>
                    <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
                </requestedPrivileges>
            </security>
        </trustInfo>
    </assembly>
    
  2. 下載 Windows SDK。

  3. 在裡面你會發現mt.exe清單工具。如下調用它:

    mt.exe -manifest "App.exe.manifest" -outputresource:"App.exe";#1
    
  4. 如果沒有錯誤,你就完成了。您可以刪除清單檔案並僅分發 EXE。運行它應該讓它每次都會自動請求管理員存取權限。

來源

答案2

建立檔案時,請求管理存取權限在此輸入影像描述

相關內容