ETC/C#

[C#] c++ Dll import (출처 및 팁..)

쪽제비 2017. 1. 3. 17:17

출처 : http://blog.danggun.net/16


위의 출처대로 하면 일단은 잘 됩니다.


단 제가 무시하고 했던것이  1-0.인크루드  이 부분이었는데

꼭!!!!!!!!! #include<windows.h> 이거를 헤더에서 추가를 해주어야 합니다!!!! 꼮 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


tip1. 전달할 인자가 포인터 이면 ref를 사용해서 넘기면 됩니다.

예를 들어 

  void swap(int *a, int *b) 로 c++에서 선언했다면

C#에서는

  void swap(ref int a, ref int b) 이렇게 해주면 됩니다.



tip2. c++ 컴파일 환경과 C# 컴파일 환경이 맞아야 합니다.

 C#의 경우 anyCpu 라고 나오는데 이거스로 하면 c++ x86 DLL을 사용해야 되고

 any cpu 말고 x64로 바꿔줄 경우 c++x64와 같이 사용하면 됩니다.