일단 WIN32 API를 사용하는것과 방법은 동일.
다만 위 페이지에는 설명이 되어있지않지만
인자를 받는 함수를 DLL로 작성해서 작동 테스트를 해보기위해 F5를 눌러보면
PInvoke 함수 '[함수명]'에 대한 호출 결과 스택이 불안정하게 되었습니다. 관리되는 PInvoke 시그니처와 관리되지 않는 대상 시그니처가 일치하지 않기 때문인 것 같습니다. 호출 규칙 및 PInvoke 시그니처의 매개 변수와 관리되지 않는 대상 시그니처가 일치하는지 확인하십시오.
같은 에러가 발생하는 경우가 있다. 작동은 잘 되는것 같지만
이 경우에는 DllImport를
[DllImport("DLL파일명", CallingConvention = CallingConvention.Cdecl)]
이렇게 수정해주면 에러가 발생하지않는다. 호출방식을 정해주지 않아서 생기는 문제라고한다
'Programing > C#' 카테고리의 다른 글
[C#]JSON 데이터 Deserialize (0) | 2016.12.28 |
---|---|
[WPF]WPF의 장점? (0) | 2016.09.13 |
[C#][STL]STL Converter (0) | 2016.08.02 |
[C#][OpenCV]C#에서 OpenCV를 사용하기 (0) | 2016.07.02 |
[C#]큰 이미지 안에서 작은 이미지 위치 찾기 (0) | 2016.02.16 |