110,536
社区成员
发帖
与我相关
我的任务
分享
#ifndef __XR_WOOLINTE_DLL_H__
#define __XR_WOOLINTE_DLL_H__
#ifdef __XR_WOOLINTE_DEF_DLL
#define DLLAPI __declspec(dllexport)
#else
#define DLLAPI __declspec(dllimport)
#endif
#ifdef __cplusplus
extern "C" {
#endif
#pragma pack(push, 1)
//定位数据内容结构
typedef struct tagGPSDataPack
{
BYTE byLock; //定位标志
//位7:GPS有效
//位5:西经
//位4:南纬
int longitude; //经度 单位ms
int latitude; //纬度 单位ms
char gpstm[6]; //时间, 年月日时分秒
}GPSDataPack,*LPGPSDataPack;
#pragma pack(pop)
/*
*********************************************************************
函数名称:
函数功能: 定义回调函数的类型
入口参数:
msg: 消息ID
wParam: 参数 0表示不成功 1表示成功
lParam: wParam==0的情况下 0表示超时 1表示已存在 2表示失败
出口参数:
注意事项:
*********************************************************************
*/
typedef void(CALLBACK *lpFunCallBack)(UINT msg, WPARAM wParam, LPARAM lParam);
/*
*********************************************************************
函数名称: InitDll
函数功能: 初始化动态链接库
入口参数:
出口参数: 0:成功 -1:失败
注意事项:
*********************************************************************
*/
DLLAPI int InitDll();
/*
*********************************************************************
函数名称: SetSendInterval
函数功能: 设置发送间隔
入口参数:
出口参数: 发送间隔时间 单位s
注意事项:
**********************************************************************
*/
DLLAPI int SetSendInterval(int iInterval);
/*
*********************************************************************
函数名称: SetDetectInterval
函数功能: 设置检测超时间隔
入口参数:
出口参数: 超时间隔时间 单位s
注意事项:
**********************************************************************
*/
DLLAPI int SetDetectInterval(int iInterval);
/*
*********************************************************************
函数名称: GetGPSPositon
函数功能: 获取GPS信息
入口参数: pGpsData: 指向GPS信息结构体
出口参数:
注意事项: 包含:定位标志、经纬度、时间
**********************************************************************
*/
DLLAPI void GetGPSPositon(LPGPSDataPack pGpsData);
/*
*********************************************************************
函数名称: SendMarkInfo_Force
函数功能: 发送标注信息
入口参数: iLong: 经度
iLati: 纬度
bDateTime: 年月日时分秒
pName: 名称
pPhone: 电话
pAddr: 地址
pContact: 联系人
出口参数: 0: 前面一个命令还未处理完成 发送失败
!0: 发送成功 返回的是发送包的序列号
成功的情况下还需等待服务器回复才能确定是否成功
注意事项: 强制覆盖 不提示
**********************************************************************
*/
DLLAPI int SendMarkInfo_Force(int iLong, int iLati, BYTE bDateTime[6],
char *pName, char *pPhone, char *pAddr, char *pContact);
/*
*********************************************************************
函数名称: WGSetCallbackFN
函数功能: 设置回调函数
入口参数: lpFunCallBack 类型的函数指针
出口参数:
注意事项:
*********************************************************************
*/
DLLAPI void WGSetCallbackFN(lpFunCallBack pCallback);
/*
*********************************************************************
函数名称: UninitDLL
函数功能: 释放动态链接库
入口参数:
出口参数: 0:成功 -1:失败
注意事项:
**********************************************************************
*/
DLLAPI int UninitDLL();
#ifdef __cplusplus
}
#endif
#endif //__XR_WOOLINTE_DLL_H__
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 1)]
public struct tagGPSDataPack
{
public byte bylock;
public int longitude;
public int latitude;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]
public char[] gpstm;
}