2014-10-24 2 views
0

libssh2 용 C# 래퍼를 작성할 계획입니다. 나는 다음과 같은 질문을 가지고있다 :libssh2 용 C# 래퍼 작성 방법

1) libssh2는 C/C++로 구현되어 있기 때문에. C# 프로젝트에 C++ DLL을 어떻게 포함시킬 수 있습니까?

2) 내 C# 프로젝트에서 libssh2 개체를 어떻게 처리 할 수 ​​있습니까?

미리 도움을 주셔서 감사합니다.

+0

안녕하세요, 래퍼에 대해? – Aimeast

답변

2

C#에서 p/Invoke 및 DLL-Import를 통해 C-Method를 호출 할 수 있습니다. 따라서 C++ 라이브러리를 사용하려면 절차 적 c-wrapper를 작성해야합니다. dll을 가져 오기위한 다음 예 :

[DllImport("kernel32.dll")] 
public extern static void Sleep(uint msec); 

당신이 C 함수를 내보낼 해일 방법입니다

_declspec(dllexport) void __cdecl Function1(void); 

난 당신이 다음 자습서를 읽어 볼 것을 권장합니다 : Tutorial p/Invoke

을 두 번째 해결 방법은 C++/CLI 래퍼를 작성하는 것입니다. 그러나 이것은 훨씬 더 복잡합니다. C++/CLI wrapper