/platform(Visual Basic)
출력 파일을 실행할 수 있는 CLR(공용 언어 런타임) 플랫폼 버전을 지정합니다.
/platform:{ x86 | x64 | Itanium | anycpu }
인수
용어 |
내용 |
anycpu |
모든 플랫폼에서 실행되도록 어셈블리를 컴파일합니다. /platform 옵션이 지정되지 않은 경우 기본 동작입니다. |
x86 |
32비트, x86 호환 CLR에 의해 실행되도록 어셈블리를 컴파일합니다. |
x64 |
AMD64 또는 EM64T 명령 집합을 지원하는 컴퓨터에서 64비트 CLR에 의해 실행되도록 어셈블리를 컴파일합니다. |
Itanium |
Itanium 프로세서가 있는 컴퓨터에서 64비트 CLR에 의해 실행되도록 어셈블리를 컴파일합니다. |
설명
/platform 옵션을 사용하여 출력 파일의 대상 프로세서 종류를 지정합니다.
일반적으로 Visual Basic에서 작성된 .NET Framework 어셈블리는 플랫폼에 관계없이 동일하게 실행됩니다. 그러나 플랫폼에 따라 다르게 동작하는 경우도 있습니다. 이러한 경우는 일반적으로 다음과 같습니다.
포인터 형식처럼 플랫폼에 따라 크기가 달라지는 멤버를 포함하는 구조체
상수 크기를 포함하는 포인터 산술
IntPtr 대신 Integer를 핸들로 사용하는 잘못된 플랫폼 호출 또는 COM 선언
IntPtr를 Integer로 캐스팅
일부 플랫폼에만 있는 구성 요소에 대해 플랫폼 호출 또는 COM interop 사용
코드가 실행될 아키텍처와 관련된 전제 사항을 알고 있는 경우 /platform 옵션을 사용하여 몇 가지 문제를 줄일 수 있습니다. 특히 다음과 같은 경우를 참조하십시오.
64비트 플랫폼을 대상으로 정했지만 응용 프로그램이 32비트 컴퓨터에서 실행되는 경우에는 이 스위치를 사용하지 않을 때보다 오류 메시지가 훨씬 더 빨리 나타나고 문제점을 더 정확하게 알려 줍니다.
스위치에 32비트 옵션을 설정했지만 응용 프로그램을 64비트 컴퓨터에서 실행하는 경우 응용 프로그램은 일반적인 경우와 달리 WOW 하위 시스템에서 실행됩니다.
64비트 Windows 운영 체제의 경우
/platform:x86으로 컴파일된 어셈블리는 WOW64에서 실행되는 32비트 CLR에서 실행됩니다.
/platform:anycpu로 컴파일된 실행 파일은 64비트 CLR에서 실행됩니다.
/platform:anycpu로 컴파일된 DLL은 이 DLL이 로드된 프로세스와 동일한 CLR에서 실행됩니다.
Windows 64비트 운영 체제에서 실행할 응용 프로그램 개발에 대한 자세한 내용은 64비트 응용 프로그램을 참조하십시오.
Visual Studio 통합 개발 환경에서 /nowarn을 설정하려면 |
|
예제
다음 예제에서는 /platform을 사용하여 응용 프로그램이 Itanium용 64비트 Windows 운영 체제에서 64비트 CLR에 의해서만 실행되도록 지정하는 방법을 보여 줍니다.
vbc /platform:Itanium myItanium.vb