VCDLLÒѾ´´½¨ºÃ¡£
ÎÒ½¨ÁËÒ»¸öÀà
´óÖ´úÂëÈçÏÂ
C/C++ code:
typedef class ZHallAPI
{
public:
virtual int GetVersion() = 0;
virtual int Prepare() = 0;
virtual int UnPrepare() = 0;
virtual int Connect(char* szIPAddr, unsigned short usIPPort) = 0;
virtual int DisConnect() = 0;
virtual int ClientLogin(const LPCLIENTLOGIN lpClientLogin, LPCLIENTLOGINRST lpClientLoginRst, char* szErrInfo) = 0;
} HALLAPI, *LPHALLAPI;
LPHALLAPI __stdcall GetHallApi();
LPHALLAPI __stdcall GetHallApi()
{
static ZClientInstance Instance;
return &Instance;
}
int ZClientInstance::MyPrepare()
{
int iRet(0);
if(this->bPrepared)
{
return T_OK;
}
this->lpClientAPI = GetClientAPI();
iRet = this->lpClientAPI->Prepare();
if(Z_OK != iRet)
{
return ERR_TP_CLIENT_ERROR;
}
this->bPrepared = true;
return T_OK;
}
int ZClientInstance::Prepare()
{
int iRet =this->MyPrepare();
if(T_OK != iRet)
{
this->UnPrepare();
}
return iRet;
}
int ZClientInstance::GetVersion()
{
//return this->API_VERSION;
return 123;
}
.......................
¸ÃdllÔÚvcϵ÷ÓòâÊÔͨ¹ý£¬ÔÚdelphiÖвâÊÔµ÷Ó㬻ᱨµØÖ·Òì³£
³ÌÐòʹÓõÄÊÇOrcalÊý¾Ý¿â£¬Ï붨ÆÚ£¨Ã¿¼¾¶È£©¶ÔÊý¾Ý¿â½øÐб¸·Ý£¬Ã»É¶Í·Ð÷£¬ÇëÎÊÓ¦¸ÃÔõôŪ£¿
ÓÐÊ²Ã´ÌØÊâÒªÇóÂ𣬱ÈÈçҪǰ¶Ë½çÃæ£¿
Ò»°ãÓÃÊý¾Ý¿â×Ô´øµÄ¡°¼Æ»®ÈÎÎñ¡±ÅäÖÃһϾ͹»ÁË
ûÓÐÊ²Ã´ÌØÊâÒªÇó¡£ÀýÈ磬ֻҪµ ......
ÒÔǰÖмäÕ¾ÊǵçÄÔͨ¹ý´®¿Ú¿ØÖƵģ¬ÏÖÔڸijÉÁËUSB½Ó¿Ú£¬ÇëÎÊÒªÔõô×ö°¡£¿Çó¸ßÊÖÖ¸µãÒ»ÏÂ
ÊÇusbת´®¿ÚÂð£¿ÄÇÓ¦¸Ã»¹ÊÇ¿ÉÒÔ°´´®¿Ú²Ù×÷µÄ£¬Ö»ÊÇËٶȲ»ÄÜÌ«¸ß
Èç¹û²»ÊÇusbת´®¿Ú£¬Çë²éÔÄusbÇý¶¯µÄsdk˵Ã÷¡£
Õâ¸öÊDz ......