본문 바로가기
C++ 200제/코딩 IT 정보

MFC DLL 함수 로드할 때 C2564 에러 원인 해결

by vicddory 2019. 7. 25.

MFC에서 DLL 사용할 때 종종 발생하는 에러입니다. 저에게 발생했던 이유는 변수 이름을 잘못 적은 게 원인이었습니다.



기본 제공 형식으로 함수 스타일 변환을 수행할 때에는 인수를 하나만 사용할 수 있습니다.



dll을 사용할 때 헤더 파일에 아래와 같이 호출할 함수를 정의합니다.


1
typedef int (__stdcall *something)(char * arr);
cs



그리고 명시적으로 호출할 함수 something과 매칭되는 변수 var_something를 정의합니다.


1
something var_something;
cs



cpp 파일에서 dll 함수 로드 등 여러 구현을 하겠죠.


그리고 something이 아니라 객체 변수 var_something을 호출하여 사용해야 하는데, something을 호출해 사용하려 시도합니다. 그러면 C2564 에러가 발생하는 겁니다.


그러니, 지금 당장 호출하려는 변수 이름부터 확인하세요.


ⓒ written by vicddory

댓글