다음을 통해 공유


-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 옵션을 사용하며, 이 옵션을 사용하여 이후 빌드 단계 또는 Windows 리소스(.res) 파일의 일부로 매니페스트를 -win32resource 제공하지 않습니다.

  2. 요청된 실행 수준을 지정하지 않는 사용자 지정 매니페스트를 제공합니다.

Visual Studio는 기본 .manifest 파일을 만들고 실행 파일과 함께 디버그 및 릴리스 디렉터리에 저장합니다. 프로젝트 디자이너의 애플리케이션 탭에서 UAC 설정 보기를 클릭하여 기본 app.manifest 파일을 보거나 편집할 수 있습니다. 자세한 내용은 애플리케이션 페이지, 프로젝트 디자이너(Visual Basic)를 참조하세요.

이 옵션을 사용하여 -nowin32manifest 애플리케이션 매니페스트를 사용자 지정 빌드 후 단계 또는 Win32 리소스 파일의 일부로 제공할 수 있습니다. 애플리케이션이 Windows Vista에서 파일 또는 레지스트리 가상화의 적용을 받도록 하려면 동일한 옵션을 사용합니다. 이렇게 하면 컴파일러가 PE 파일에 기본 매니페스트를 만들고 포함할 수 없습니다.

예시

다음 예제에서는 Visual Basic 컴파일러가 PE에 삽입하는 기본 매니페스트를 보여 줍니다.

비고

컴파일러는 매니페스트 XML에 MyApplication.app 표준 애플리케이션 이름을 삽입합니다. Windows Server 2003 서비스 팩 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>  

참고하십시오