2011-12-29 4 views
1

저는 C++ 프로젝트를 진행하고 있습니다. C# .NET 프로젝트로 이식하고 싶습니다. 몇 가지 연구를 해본 결과 가장 인기있는 방법은 pinvoke를 사용하는 것입니다.C++ 용 래퍼 클래스?

나는 다른 방법이 존재했는지 알지 못합니까?

미리 감사드립니다.

+0

C# – tenfour

+1

의 네이티브 COM 구성 요소를 사용할 수 있습니다. 약간 그렇습니다. pinvoke를 사용하여 C++ 클래스를 사용할 수는 없습니다. C++/CLI가 필요합니다. http://stackoverflow.com/questions/2691325/c-cli-mixed-mode-dll-creation –

답변

2

글쎄, 평범한 P/Invoke는 C와 인터페이스하는 것이 좋다.하지만 실제 C++ 코드와 상호 운용하려면 더 복잡한 것을 사용해야한다. .NET을 사용하면 C++/CLI를 사용할 수 있습니다. 에 모노 및 .NET에서 당신은 사용할 수 있습니다

첫 번째 옵션은 덜 성숙하지만, 더 우아한 것 같다.

1

래퍼 클래스를 만들려면 C++/CLI을 사용할 수 있습니다.

6

당신은 할 수 있습니다

1) 중 하나를 사용하여 C#으로

2) 재사용 여러 구성 요소를 전체 프로젝트를 다시 작성 :

  • P/Invoke 관리되지 않는 컴파일 된 코드를 재사용 할 수

    또는

  • C++/CLI을 사용하여 래퍼 클래스 생성