그룹의 새 C# 프로그램에서 사용해야하는 기본 C++ DLL이 있습니다. C++에서 가져오고 컴파일 할 수 있도록 네이티브 C++ DLL에 대한 C++/CLI 래퍼를 만들고 싶습니다.C++ 네이티브 dll 용 C++/CLI 래퍼
내가 알아야 할 것은 래퍼 원본 파일에서 dll 파일을 처음으로로드하는 방법입니다. #using < ...>와 정확히 똑같은 일이 MSIL을위한 것이지만 네이티브 C++ dll을로드하는 것입니다.
또한 dll 내의 개체와 네임 스페이스는 어떻게 (자연스럽게) 액세스 할 수 있습니까?
편집 :이 같은
내가
class __declspec(dllexport) radar
{
// declarations and definitions
...
};
내 radar.dll에서 내 레이더 클래스를 수출하고, VC에서 가져와야하는 데 사용하는 ++ (CLI) 프로그램 : __declspec(dllimport) public class radar;
않도록 그것의 정의를 C#으로 수행하는 것은 확실하지만, C#에서 레이더를 볼 수 없다. 왜냐하면 VC++ (CLI)에서는 공개되지 않았기 때문이다. 내가 radar pos1();
처럼, VC++ DLL의 코드에서 네이티브 DLL의 개체를 사용 싶은 경우에도 내가 얻을 :
error C2512: 'radar' : no appropriate default constructor available
방법이 작업을 수행 할 수 손에 그냥 레이더 선언을 가지는?
끝 편집.
고맙습니다!
왜 C++/CLI 래퍼를 만들어야합니까? C#에서 PInvoke를 사용하여 기본 DLL을 호출하지 않는 이유가 있습니까? http://msdn.microsoft.com/en-us/library/aa446536.aspx – PeskyGnat