하나 이상의 형식 라이브러리 이름 또는 .tlb 파일 목록을 가져와서 해당 형식 라이브러리를 디스크의 위치로 확인합니다.
Parameters
다음 표에서는 ResolveCOMReference 작업의 매개 변수에 대해 설명합니다.
| Parameter | Description |
|---|---|
DelaySign |
선택적 Boolean 매개 변수입니다.이면 true어셈블리에 공개 키를 배치합니다. 이면 false어셈블리에 완전히 서명합니다. |
EnvironmentVariables |
선택적 String[] 매개 변수입니다.동일한 기호로 구분된 환경 변수 쌍의 배열입니다. 이러한 변수는 생성된 tlbimp.exe 전달되고 일반 환경 블록 외에 선택적으로 재정의되는 aximp.exe 전달됩니다. |
ExecuteAsTool |
선택적 Boolean 매개 변수입니다.true경우 tlbimp.exe 실행하고 적절한 대상 프레임워크에서 프로시저 외부로 aximp.exe 필요한 래퍼 어셈블리를 생성합니다. 이 매개 변수는 다중 대상 지정을 사용하도록 설정합니다. |
IncludeVersionInInteropName |
선택적 Boolean 매개 변수입니다.이 경우 true형식 라이브러리 버전이 래퍼 이름에 포함됩니다. 기본값은 false입니다. |
KeyContainer |
선택적 String 매개 변수입니다.퍼블릭/프라이빗 키 쌍을 보유하는 컨테이너를 지정합니다. |
KeyFile |
선택적 String 매개 변수입니다.퍼블릭/프라이빗 키 쌍을 포함하는 항목을 지정합니다. |
NoClassMembers |
선택적 Boolean 매개 변수입니다. |
ResolvedAssemblyReferences |
선택적 ITaskItem[] 출력 매개 변수입니다.확인된 어셈블리 참조를 지정합니다. |
ResolvedFiles |
선택적 ITaskItem[] 출력 매개 변수입니다.이 작업에 대한 입력으로 제공된 형식 라이브러리의 실제 위치에 해당하는 디스크의 정규화된 파일을 지정합니다. |
ResolvedModules |
선택적 ITaskItem[]매개 변수입니다. |
SdkToolsPath |
선택적 System.String 매개 변수입니다. 이 true경우 ExecuteAsTool 이 매개 변수를 대상으로 하는 프레임워크 버전의 SDK 도구 경로로 설정해야 합니다. |
StateFile |
선택적 String 매개 변수입니다.COM 구성 요소 타임스탬프에 대한 캐시 파일을 지정합니다. 없는 경우 모든 실행은 모든 래퍼를 다시 생성합니다. |
TargetFrameworkVersion |
선택적 String 매개 변수입니다.프로젝트 대상 프레임워크 버전을 지정합니다. 기본값은 String.Empty입니다. 즉, 대상 프레임워크를 기반으로 하는 참조에 대한 필터링이 없음을 의미합니다. |
TargetProcessorArchitecture |
선택적 String 매개 변수입니다.기본 대상 프로세서 아키텍처를 지정합니다. 변환 후 tlbimp.exe/machine 플래그에 전달됩니다. 매개 변수 값은 .의 ProcessorArchitecture멤버여야 합니다. |
TypeLibFiles |
선택적 ITaskItem[] 매개 변수입니다.COM 참조에 대한 형식 라이브러리 파일 경로를 지정합니다. 이 매개 변수에 포함된 항목에는 항목 메타데이터가 포함될 수 있습니다. 자세한 내용은 TypeLibFiles 항목 메타데이터 섹션을 참조하세요. |
TypeLibNames |
선택적 ITaskItem[] 매개 변수입니다.확인할 형식 라이브러리 이름을 지정합니다. 이 매개 변수에 포함된 항목에는 일부 항목 메타데이터가 포함되어야 합니다. 자세한 내용은 TypeLibNames 항목 메타데이터 섹션을 참조하세요. |
WrapperOutputDirectory |
선택적 String 매개 변수입니다.생성된 interop 어셈블리가 배치되는 디스크의 위치입니다. 이 항목 메타데이터를 지정하지 않으면 태스크는 프로젝트 파일이 있는 디렉터리의 절대 경로를 사용합니다. |
TypeLibNames 항목 메타데이터
다음 표에서는 매개 변수에 전달된 항목에 사용할 수 있는 항목 메타데이터에 대해 TypeLibNames 설명합니다.
| Metadata | Description |
|---|---|
GUID |
필수 항목 메타데이터입니다. 형식 라이브러리의 GUID입니다. 이 항목 메타데이터를 지정하지 않으면 작업이 실패합니다. |
VersionMajor |
필수 항목 메타데이터입니다. 형식 라이브러리의 주 버전입니다. 이 항목 메타데이터를 지정하지 않으면 작업이 실패합니다. |
VersionMinor |
필수 항목 메타데이터입니다. 형식 라이브러리의 부 버전입니다. 이 항목 메타데이터를 지정하지 않으면 작업이 실패합니다. |
EmbedInteropTypes |
선택적 Boolean 메타데이터입니다.이 경우 trueinterop DLL을 생성하지 않고 이 참조의 interop 형식을 어셈블리에 직접 포함합니다. |
LocaleIdentifier |
선택적 항목 메타데이터입니다. 형식 라이브러리의 로캘 식별자(또는 LCID)입니다. 이 식별자는 사용자, 지역 또는 애플리케이션에서 선호하는 인간 언어를 식별하는 32비트 값으로 지정됩니다. 이 항목 메타데이터를 지정하지 않으면 작업에서 기본 로캘 식별자 "0"을 사용합니다. |
WrapperTool |
선택적 항목 메타데이터입니다. 이 형식 라이브러리에 대한 어셈블리 래퍼를 생성하는 데 사용되는 래퍼 도구를 지정합니다. 이 항목 메타데이터를 지정하지 않으면 태스크는 "tlbimp"의 기본 래퍼 도구를 사용합니다. 형식 라이브러리의 사용 가능한 대/소문자를 구분하지 않는 선택은 다음과 같습니다. - Primary: COM 구성 요소에 대해 이미 생성된 기본 interop 어셈블리를 사용하려는 경우 이 래퍼 도구를 사용합니다. 이 래퍼 도구를 사용하는 경우 태스크가 실패하므로 래퍼 출력 디렉터리를 지정하지 마세요.- TLBImp: COM 구성 요소에 대한 interop 어셈블리를 생성하려는 경우 이 래퍼 도구를 사용합니다.- PrimaryOrTLBImp: 적절한지 확실하지 PrimaryTLBImp 않은 경우 이 래퍼 도구를 사용합니다. 논리가 Primary 먼저 적용된 다음 TLBImp.- AXImp: ActiveX 컨트롤에 대한 interop 어셈블리를 생성하려는 경우 이 래퍼 도구를 사용합니다. |
TypeLibFiles 항목 메타데이터
다음 표에서는 매개 변수에 전달된 항목에 사용할 수 있는 항목 메타데이터에 대해 TypeLibFiles 설명합니다.
| Metadata | Description |
|---|---|
EmbedInteropTypes |
선택적 Boolean 매개 변수입니다.이 경우 trueinterop DLL을 생성하지 않고 이 참조의 interop 형식을 어셈블리에 직접 포함합니다. |
WrapperTool |
선택적 항목 메타데이터입니다. 이 형식 라이브러리에 대한 어셈블리 래퍼를 생성하는 데 사용되는 래퍼 도구를 지정합니다. 이 항목 메타데이터를 지정하지 않으면 태스크는 "tlbimp"의 기본 래퍼 도구를 사용합니다. 형식 라이브러리의 사용 가능한 대/소문자를 구분하지 않는 선택은 다음과 같습니다. - Primary: COM 구성 요소에 대해 이미 생성된 기본 interop 어셈블리를 사용하려는 경우 이 래퍼 도구를 사용합니다. 이 래퍼 도구를 사용하는 경우 태스크가 실패하므로 래퍼 출력 디렉터리를 지정하지 마세요.- TLBImp: COM 구성 요소에 대한 interop 어셈블리를 생성하려는 경우 이 래퍼 도구를 사용합니다.- AXImp: ActiveX 컨트롤에 대한 interop 어셈블리를 생성하려는 경우 이 래퍼 도구를 사용합니다. |
Note
형식 라이브러리를 고유하게 식별하기 위해 제공하는 정보가 많을수록 태스크가 디스크의 올바른 파일로 확인될 가능성이 커지게 됩니다.
Remarks
이 문서에 나열된 매개 변수 외에도 이 작업은 클래스의 매개 변수를 Task 상속합니다. 이러한 추가 매개 변수 및 해당 설명 목록은 Task 기본 클래스참조하세요.
이 작업이 작동하려면 컴퓨터에 COM DLL을 등록할 필요가 없습니다.
MSB4803 Error
CLI 명령에서 dotnet 작업을 사용하는 ResolveCOMReference 프로젝트를 실행하려고 하면 다음 오류가 발생합니다.
MSB4803: The task "ResolveComReference" is not supported on the .NET Core version of MSBuild. Please use the .NET Framework version of MSBuild.
이 작업은 명령줄에서 명령을 실행할 dotnet build 때 사용되는 MSBuild의 .NET Core 버전에서 지원되지 않습니다. 이 실행 파일은 .NET Framework 버전의 MSBuild를 사용하므로 Visual Studio 개발자 명령 프롬프트에서 MSBuild.exe 호출하여 프로젝트를 빌드해 봅니다.