2009-09-07 7 views
1

몇 가지 COM 라이브러리를 참조하는 Visual   Studio   2005 년 C# 프로젝트가 있습니다. 오류가 발생하면 다음과 같이 오류가 발생합니다.자동으로 강력한 COM Interop 래퍼 이름 지정

참조 어셈블리 'assemblyName'에는 강력한 이름이 없습니다.

이제는 Visual   Studio   2003에서 COM 어셈블리를 참조했으며 Interop 랩퍼에 자동으로 서명했습니다. 내가해야만하는 것은 설정 'Wrapper Assembly Key File'을 설정하는 것이 었습니다.

Visual   Studio   2005에서 비슷한 설정을 찾았지만 찾을 수 없습니다. 그래서 Visual C++에서 COM Interops라는 강력한 이름을 짓는 동등한 방법이 있는지 궁금합니다.   Studio   2005 위의 오류를 없애는 것입니다.

답변

0

"Where is the Wrapper Assembly Key File setting in VS 2008?"질문에 이미 답변 된 것 같습니다.

+1

그래, 내가 명령 줄에서 할 수있어. 하지만 참조하고있는 COM 라이브러리는 C# 프로젝트를 참조하는 것과 같은 솔루션입니다. 그리고 네,이 경우에도 tlbimp를 post 또는 prebuild 이벤트로 사용할 수 있습니다. 그러나 VS2005에서 사용했던 VS2005의 간단한 UI 설정이 있는지 궁금합니다. –

0

Visual Studio를 사용하는 대신 Tlbimp.exe와 Aximp.exe를 사용하여 Interops를 생성 할 수 있습니다. Tlbimp.exe에는 서명 옵션이 있습니다.

나는이 응용 프로그램에서 동일한 COM 구성 요소의 각기 다른 버전에 대한 Interop 파일을 생성하는 데 사용했습니다. COM 구성 요소는 공급 업체가 제공하는 COM 구성 요소로서 질량 분석 파일의 데이터 요소에 액세스하는 데 사용되며 COM 인터페이스는 공급 업체 소프트웨어의 새 버전 출시와 함께 수시로 변경됩니다. 응용 프로그램은 런타임에 응용 프로그램이 설치된 컴퓨터에 설치된 버전과 일치시킬 Interop를 결정할 수 있습니다. Interops 생성을 위해 사용하는 BAT 파일 is online.