implib.exe 유틸로 일반적인 방법으로 Lib 만들고
( implib HSClientAPI.lib HSClientAPI.dll )
붙이니까 링크 에러 없이 잘됩니다.
단한가지 고치실것은 아래 소스처럼 헤더에 extern "C" 처리 해주셔야합니다.
lib와 헤더파일 첨부하니 한번 해보세요
#ifndef HSClientAPIH
#define HSClientAPIH
extern "C"
{
void __stdcall HSPTZSetting(BOOL type, BYTE bChannel, int position); //060411 ksg PTZ Add
int __stdcall HSConnect(char *ip, int port, char *id, char *pw, BYTE *RecvCam, BYTE connectType);
int __stdcall HSConnect1(long ip, int port, char *id, char *pw, BYTE *RecvCam, BYTE connectType);
void __stdcall HSDisConnect();
int __stdcall HSClassOpen(long hwParent, BYTE bType=0);
void __stdcall HSClassClose();
void __stdcall HSAddCam(BYTE *AddCam);
BYTE __stdcall HSRelay(BYTE bCh, BYTE bFlag); //Relay Setting
BYTE __stdcall HSGetRelay(BYTE bi);
int __stdcall HSSetConfig(void *pFuncImage); //Image CallBack
int __stdcall HSSetSignal(void *pFuncSignal); //Signal CallBack
void __stdcall HSSetRelay(void *pFuncRelay); //Relay CallBack
void __stdcall HSSetDisConnect(void *pFuncDisConnect); //Disconnect CallBack
//2005.10.24 64ch
BYTE __stdcall HSGetMaxCamera(); //MaxCamera(MaxChannel)
//search api 2006.03.30
long __stdcall HSSchInitialize(void * pfRecvImage, void * pfRecvDisconnect);
void __stdcall HSSchClose();
long __stdcall HSSchConnect(LPCTSTR pszIP, short nPort, LPCTSTR pszID, LPCTSTR pszPW, long nType);
void __stdcall HSSchDisConnect();
void __stdcall HSSchGoto(short nYear, short nMonth, short nDay, short nHour, short nMinute, short nSecond, short nCamera);
void __stdcall HSSchPlay();
void __stdcall HSSchPause();
void __stdcall HSSchStop();
void __stdcall HSSchReverse();
void __stdcall HSSchSetPlaySpeed(short nSpeed);
//<--
}
VC시러 님이 쓰신 글 :
: VC 용 dll 을 빌더용으로 변환 하려고 하는데요...
:
: 게시판에 dll 변환 관련 글들에 나와있는 모든 방법을 다 써봤는데
:
: 계속 Linker Error 가 발생합니다.
:
: 이 dll 자체가 빌더에서는 사용이 불가능 한건지..
:
: 도저히 알수가 없어서요..
:
: 고수님들 도움 좀 부탁드립니다.
:
: 이게 그 dll 과 헤더 파일입니다.
|