-win32manifest (Visual Basic)

識別要內嵌到專案的可攜式執行檔 (PE) 中的使用者定義 Win32 應用程式資訊清單檔。

語法

-win32manifest: fileName  

引數

詞彙 定義
fileName 自訂資訊清單檔案的路徑。

備註

根據預設,Visual Basic 編譯器會內嵌應用程式資訊清單,以指定所要求之執行層級的 asInvoker。 編譯器會在建置可執行檔所在的資料夾中建立資訊清單,當您使用 Visual Studio 時,通常會是 bin\Debug 或是 bin\Release 資料夾。 如果您要提供自訂資訊清單,例如指定 highestAvailable 或 requireAdministrator 做為要求的執行層級,請使用此選項指定檔案名稱。

注意

此選項與 -win32resource 選項互斥。 如果您嘗試在相同的命令列中使用這兩個選項,則會收到建置錯誤。

如果應用程式的應用程式資訊清單未指定要求的執行層級,則會受限於 Windows Vista 中「使用者帳戶控制」功能下的檔案/登錄虛擬化。 如需虛擬化的詳細資訊,請參閱 Windows Vista 的 ClickOnce 部署

如果符合下列任一個條件,您的應用程式將會受限於虛擬化︰

  1. 您使用了 -nowin32manifest 選項且未在之後的建置步驟中提供資訊清單,或使用 -win32resource 選項作為 Windows 資源 (.res) 檔的一部分。

  2. 您可以提供未指定所要求執行層級的自訂資訊清單。

Visual Studio 會建立預設 .manifest 檔案,並將它與可執行檔一起儲存在偵錯和發行目錄中。 您可以在 [專案設計工具] 的 [應用程式] 索引標籤上按一下 [檢視 UAC 設定],以檢視或編輯預設的 app.manifest 檔。 如需詳細資訊,請參閱專案設計工具、應用程式頁 (Visual Basic)

您可以使用 -nowin32manifest 選項,提供應用程式資訊清單作為自訂建置後步驟或作為 Win32 資源檔的一部分。 如果您想要應用程式受制於 Windows Vista 上的檔案或登錄虛擬化,請使用這個相同的選項。 這會防止編譯器在 PE 檔中建立和內嵌預設的資訊清單。

範例

下列範例顯示 Visual Basic 編譯器插入至 PE 的預設資訊清單。

注意

編譯器會將標準應用程式名稱 MyApplication.app 插入資訊清單 XML。 這是讓應用程式在 Windows Server 2003 Service Pack 3 上執行的因應措施。

<?xml version="1.0" encoding="utf-8" standalone="yes"?>  
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">  
  <assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>  
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">  
    <security>  
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">  
        <requestedExecutionLevel level="asInvoker"/>  
      </requestedPrivileges>  
    </security>  
  </trustInfo>  
</assembly>  

另請參閱