![](/html/2d/2d76/2d764ce438ea256b48b4ede0a36d1e6da6038f46f677f2a998fcb2de7da148fb/bg1.png)
The Functions for communication
此 DLL 中的所有文件都是用命令行上定义的 DLL_API 符号编译的。在使用此 DLL 的
任何其他项目上都不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将
DLL_API 函数视为是从 DLL 导入的。
#ifndef DLL_API
#define DLL_API extern "C" __declspec(dllimport)
#endif
定义标准调用:
#define WIN_API __stdcall
WORD :unsigned short,无符号 16bit 整型。
BOOL : bool,布尔类型。
ULONG:unsigned long,无符号 32bit 整型。
1. USB 通讯模式下设置设备 IP 信息函数
声明:DLL_API WORD WINAPI dsoUSBModeSetIPAddr(WORD DeviceIndex,
ULONG nIP,
ULONG nSubnetMask,
ULONG nGateway,
USHORT nPort,
BYTE* pMac);
返回值:
设置成功返回 1 , 设置失败返回 0
参数:
WORD DeviceIndex, 表示当前设备的索引值
ULONG nIP, 要设置的 IP,例如 192.168.1.1 , 则 IP = 0xC0A80101
ULONG nSubnetMask, 子网掩码,例如 255.255.255.0, 则 nSubnetMask = 0xFFFFFF00
ULONG nGateway, 网关, 例如 192.168.1.1, 则 nGateway = 0Xc0A80101
USHORT nPort, 通讯端口, 范围: 1 ~ 65535
BYTE* pMac, MAC 地址, MAC[6] = {FC,EF,A8,11,1F,5}
备注:
当前通讯模式是 USB 通讯时,可以调用此函数设置设备的网络参数.
2. USB 通讯模式下获取设备的 IP 信息
声明: DLL_API WORD WINAPI dsoUSBModeGetIPAddr(WORD DeviceIndex,
ULONG* pIP,
ULONG* pSubMask,
ULONG* pGateway,
WORD* pPort,
![](/html/2d/2d76/2d764ce438ea256b48b4ede0a36d1e6da6038f46f677f2a998fcb2de7da148fb/bg2.png)
BYTE* pMac);
返回值:
获取成功返回 1 , 获取失败返回 0
参数:
WORD DeviceIndex, 表示当前设备的索引值
ULONG* pIP, IP 地址,例如设备 IP 地址是 192.168.1.1 , 则*pIP = 0xC0A80101
ULONG* pSubnetMask, 子网掩码,例如 255.255.255.0, 则*pSubnetMask = 0xFFFFFF00
ULONG* pGateway, 网关, 例如 192.168.1.1, 则*pGateway = 0Xc0A80101
USHORT* pPort, 通讯断口, 范围: 1 ~ 65535
BYTE* pMac, MAC 地址,
备注:
当前通讯模式是USB通讯时,可以调用此函数获取设置设备的网络参数
3. 在 USB 通讯模式下切换到网络通讯模式
声明:DLL_API WORD WINAPI dsoOpenLan(WORD DeviceIndex,
WORD nMode);
返回值:
设置失败返回 0, 设置成功返回 非 0
参数:
WORD DeviceIndex, 表示当前设备的索引值
WORD nMode, 表示 LAN/WIFI 通讯, nMode = 0,表示 LAN, nMode = 1,表示 WIFI
备注:
当要切换到网络通讯模式下时,调用此函数通知设备切换通讯模式,如果是切换到
WIFI 模式, 调用此函数后要等待大约 90s 以保证 WIFI 启动完毕.
4. 网络通讯模式下设置设备 IP 信息函数
DLL_API WORD WINAPI dsoLANModeSetIPAddr(WORD DeviceIndex,
ULONG nIP,
ULONG nSubnetMask,
ULONG nGateway,
USHORT nPort,
BYTE* pMac);
备注: 同函数 dsoUSBModeSetIPAddr
5. 网络通讯模式下获取设备 IP 信息函数
DLL_API WORD WINAPI dsoLANModeGetIPAddr(WORD DeviceIndex,
ULONG* pIP,
ULONG* pSubnetMask,
ULONG* pGateway,
USHORT* pPort,