2010-11-18 5 views
9

에서 c 함수를 호출하면 int를받는 C 함수가 증가하고 값이 증가합니다. 다른 쪽에서는 C#의 입력란에 입력 번호를 입력합니다. 어떻게 C 함수를 호출하여 번호를 처리하고 C#에서 다시 반환 할 수 있습니까? 미리 감사드립니다.간단한 예제로 C#

답변

12

P/Invoke을 찾고 계십니다.

당신이 다음 System.Runtime.InteropServices에 대한 참조가 필요합니다 수행하고 다음, 당신의 C의 DLL이 increase_int라는 기능이 포함 된 경우 :

[DllImport("mylib.dll")] 
private static extern int increase_int(int in_value); 

int newValue = increase_int(oldValue); 
+0

완벽하고 코드에서 그것을 사용할 수 있습니다. ..thank yo .. –

+0

안녕하세요, 나는 프로그램을 디버깅 할 수 없는데 왜 컨트롤이 F11 단계를 넘을 때 함수로 들어 가지 않습니까? –

+0

.Net의 표준 디버그 메커니즘을 사용하여 C DLL을 디버깅 할 수 없습니다. – Residuum