|
: 그리고 c소스는 아래와 같으며 프로젝트 파일에 LIB 파일 추가하고 실행하면 컴파일 됩니다.
: 그런데.. 빌더에서 어떻게 해하 되는지 잘 모르겠네요..
C소스는 되는데 CPP소스에서만 컴파일이 안되는 경우는
라이브러리(or DLL)은 C로 컴파일 되어 있고
사용할때 C++컴파일러를 사용하는 경우입니다.
이럴때는 선언 부분을
extern "C" {} 로 묶어줘야 합니다.
라이브러리 추가되 있는지 확인하시고..
extern "C"
{
int WINAPI lockinit(int op1);
int WINAPI lockauto(int op1);
int WINAPI lockfunc0(int op1, int op2);
int WINAPI lockfunc1(int op1, int op2);
int WINAPI lockfunc2(int op1, int op2);
int WINAPI lockfunc3(int op1, int op2);
int WINAPI lockwrite(int op1, int op2);
int WINAPI lockread(int op1, int op2); /*
}
이렇게 선언해 보세요
그리고 게시판에 올린 소스 고쳐서 에러 안뜨게 만들었으니 참고하세요
근데.. 게시판에 올린 소스는 프로젝트에 mega.lib포함 안한거군요
mega.dll에 함수이름이 _lockinit으로 안들어가 있어서 강제로 '_' 가 추가된이름으로
변환하였습니다. ( impdef.exe, implib.exe 사용했음 )
파일이름이 mega2.lib 이고요 프로젝트에 이것을 링크 시켰습니다.
에러 없이 컴파일 하는거 확인했으니 받아보세요
|