2011-03-24 4 views
0

나는 관리되는 C++를 사용하고 네이티브 C++ 라이브러리를 사용하는 DLL을 가지고 있습니다. 이 dll은 차례로 C# 인터페이스에 의해 소비됩니다. 아마 짐작 하듯이, 관리되는 C++은 interop 코드 일뿐입니다. 이것의 아무 것도 수출되지 않습니다.새 코드없이 libs에서 DLL 만들기

우리는 관리되는 C++과 네이티브 C++ 모두 외부 C++ 실행 파일 (내부 테스트 목적)을 통해 액세스해야한다는 새로운 요구 사항이 있습니다. 그래서 관리되는 C++ 레이어를 lib로 변경하고 관리되는 라이브러리와 기본 라이브러리를 사용하여 dll을 만드는 별도의 프로젝트를 만들려고합니다. 거기에 새로운 코드가 없을 것입니다. 그것은 두 개의 libs를 소비하는 프로젝트 일뿐입니다. 그런 다음, 우리는이 두 libs를 사용하고 또 하나의 테스트 코드를 추가하는 또 다른 프로젝트를 가질 수 있습니다. 하지만이 작업을 수행하는 데 많은 어려움을 겪고 있습니다. IDE에서 내 DLL을 생성 할 수 없습니다. 누구든지 저에게 어떤 제안이 있습니까?

답변

1

관리 코드에서 정적 링크 라이브러리를 만들 수 없으며 VS 빌드 시스템에서 정적 링크 라이브러리를 지원하지 않습니다. 관리 코드 저장소 단위는 어셈블리입니다. 그들은 빌드시에 링크되어 있지 않습니다. 런타임시 발생합니다. 래퍼를 테스트하려면 테스트 프로그램을 관리해야합니다.