#ifndef _SADP_H_
|
#define _SADP_H_
|
|
|
#if defined _WIN32 || defined _WIN64
|
#define CSADP_API extern "C"__declspec(dllimport)
|
#elif defined __linux__ || defined __APPLE__
|
#define CSADP_API extern "C"
|
#endif
|
|
#if defined _WIN32 || defined _WIN64
|
#define CALLBACK __stdcall
|
#elif defined __linux__ || defined __APPLE__
|
#define CALLBACK
|
#endif
|
|
|
//ÏûÏ¢²Ù×÷µÄÀàÐÍ
|
#define SADP_ADD 1 //Ôö¼ÓÒ»É豸
|
#define SADP_UPDATE 2 //¸üÐÂÉ豸
|
#define SADP_DEC 3 //É豸ÏÂÏß
|
#define SADP_RESTART 4 //Éè±¸ÖØÐÂÆô¶¯
|
#define SADP_UPDATEFAIL 5 //É豸¸üÐÂʧ°Ü
|
|
#define MSG_FIND_DEVICE 9000 // ·¢ÏÖÉ豸ÏûÏ¢
|
|
// ´íÎóÂë
|
#define SADP_ERROR_BASE 2000
|
#define SADP_NOERROR 0 // ûÓдíÎó
|
#define SADP_ALLOC_RESOURCE_ERROR SADP_ERROR_BASE+1 // ×ÊÔ´·ÖÅä´íÎó
|
#define SADP_NOT_START_ERROR SADP_ERROR_BASE+2 // SADPδÆô¶¯
|
#define SADP_NO_ADAPTER_ERROR SADP_ERROR_BASE+3 // ÎÞÍø¿¨
|
#define SADP_GET_ADAPTER_FAIL_ERROR SADP_ERROR_BASE+4 // »ñÈ¡Íø¿¨ÐÅϢʧ°Ü
|
#define SADP_PARAMETER_ERROR SADP_ERROR_BASE+5 // ²ÎÊý´íÎó
|
#define SADP_OPEN_ADAPTER_FAIL_ERROR SADP_ERROR_BASE+6 // ´ò¿ªÍø¿¨Ê§°Ü
|
#define SADP_SEND_PACKET_FAIL_ERROR SADP_ERROR_BASE+7 // ·¢ËÍÊý¾Ýʧ°Ü
|
#define SADP_SYSTEM_CALL_ERROR SADP_ERROR_BASE+8 // ϵͳ½Ó¿Úµ÷ÓÃʧ°Ü
|
#define SADP_DENY_OR_TIMEOUT_ERROR SADP_ERROR_BASE+9 // É豸¾Ü¾ø´¦Àí»ò³¬Ê±
|
#define SADP_NPF_INSTALL_FAILED SADP_ERROR_BASE+10 // °²×°NPF·þÎñʧ°Ü
|
|
|
// ½á¹¹Ìå
|
typedef struct tagSADP_DEVICE_INFO
|
{
|
char szSeries[12];
|
char szSerialNO[48];
|
char szMAC[20];
|
char szIPv4Address[16];
|
char szIPv4SubnetMask[16];
|
unsigned int dwDeviceType;
|
unsigned int dwPort;
|
unsigned int dwNumberOfEncoders;
|
unsigned int dwNumberOfHardDisk;
|
char szDeviceSoftwareVersion[48];
|
char szDSPVersion[48];
|
char szBootTime[48];
|
int iResult;
|
char szDevDesc[24]; //É豸ÀàÐÍÃèÊö
|
char szOEMinfo[24]; //OEM²úÉÌÐÅÏ¢
|
char szIPv4Gateway[16]; //IPv4Íø¹Ø
|
char szIPv6Address[46]; //IPv6µØÖ·
|
char szIPv6Gateway[46]; //IPv6Íø¹Ø
|
unsigned char byIPv6MaskLen; //IPv6×ÓÍøÇ°×º³¤¶È
|
unsigned char bySupport; //°´Î»±íʾ,¶ÔӦΪΪ1±íʾ֧³Ö,0x01:ÊÇ·ñÖ§³ÖIpv6,0x02:ÊÇ·ñÖ§³ÖÐÞ¸ÄIpv6²ÎÊý,0x04:ÊÇ·ñÖ§³ÖDhcp
|
unsigned char byDhcpEnabled; //Dhcp״̬, 0 ²»ÆôÓà 1 ÆôÓÃ
|
unsigned char byDeviceAbility; //0£ºÉ豸²»Ö§³Ö¡°¡®É豸ÀàÐÍÃèÊö¡¯ 'OEM³§ÉÌ' 'IPv4Íø¹Ø' ¡®IPv6µØÖ·¡¯ 'IPv6Íø¹Ø' ¡®IPv6×ÓÍøÇ°×º¡¯¡®DHCP¡¯¡± 1£ºÖ§³ÖÉÏËß¹¦ÄÜ
|
unsigned char byRes1[64]; //±£Áô
|
}SADP_DEVICE_INFO, *LPSADP_DEVICE_INFO;
|
|
//´ýÐ޸ĵÄÉè±¸ÍøÂç²ÎÊý
|
typedef struct tagSADP_DEV_NET_PARAM
|
{
|
char szIPv4Address[16]; // IPv4µØÖ·
|
char szIPv4SubNetMask[16]; // IPv4×ÓÍøÑÚÂë
|
char szIPv4Gateway[16]; // IPv4Íø¹Ø
|
char szIPv6Address[128]; // IPv6µØÖ·
|
char szIPv6Gateway[128]; // IPv6Íø¹Ø
|
unsigned short wPort; // É豸¼àÌý¶Ë¿Ú
|
unsigned char byIPv6MaskLen; // IPv6ÑÚÂ볤¶È
|
unsigned char byDhcpEnable; // DHCPʹÄÜ
|
unsigned char byRes[128];
|
}SADP_DEV_NET_PARAM, *LPSADP_DEV_NET_PARAM;
|
|
|
// CMS²ÎÊý
|
typedef struct tagSADP_CMS_PARAM
|
{
|
char szPUID[32]; // Ô¤·ÖÅäµÄPUID
|
char szPassword[16]; // ÉèÖõĵǼÃÜÂë
|
char szCmsIPv4[16]; // CMS·þÎñÆ÷IPv4µØÖ·
|
char szCmsIPv6[128]; // CMS·þÎñÆ÷IPv6µØÖ·
|
unsigned short wCmsPort; // CMS·þÎñÆ÷¼àÌý¶Ë¿Ú
|
unsigned char byRes[30];
|
}SADP_CMS_PARAM, *LPSADP_CMS_PARAM;
|
|
|
|
|
// ½Ó¿Ú
|
typedef void (CALLBACK *PDEVICE_FIND_CALLBACK)(const SADP_DEVICE_INFO *lpDeviceInfo, void *pUserData);
|
CSADP_API int CALLBACK SADP_Start_V30(PDEVICE_FIND_CALLBACK pDeviceFindCallBack, int bInstallNPF = 1, void* pUserData = NULL);
|
CSADP_API int CALLBACK SADP_SendInquiry(void);
|
CSADP_API int CALLBACK SADP_Stop(void);
|
CSADP_API int CALLBACK SADP_ModifyDeviceNetParam(const char* sMAC, const char* sPassword, const SADP_DEV_NET_PARAM *lpNetParam);
|
CSADP_API unsigned int CALLBACK SADP_GetSadpVersion(void);
|
CSADP_API int CALLBACK SADP_SetLogToFile(int nLogLevel=0, char const *strLogDir = NULL, int bAutoDel = 1);
|
CSADP_API unsigned int CALLBACK SADP_GetLastError(void);
|
CSADP_API int CALLBACK SADP_ResetDefaultPasswd(const char* sDevSerialNO, const char* sCommand);
|
CSADP_API int CALLBACK SADP_SetCMSInfo(const char* sMac, const SADP_CMS_PARAM *lpCmsParam);
|
|
|
#endif
|
|
|
|
|