调用联通sgipapi.dll的调用问题,请大家帮帮忙 ( 积分: 100 )

  • 主题发起人 主题发起人 try_hap
  • 开始时间 开始时间
T

try_hap

Unregistered / Unconfirmed
GUEST, unregistred user!
联通有一个函数接口使用来接收上传信息的,包括状态报告函数头文件声明是:
SGIPAPI_API int SGIP_Get_MO(int conn_id,void **pp_MO);
struct MO_msg{
char sourceUser[21]; //发送消息的手机
char SPNumber[21]; //SP接入号
unsigned char tp_pid;
unsigned char tp_udhi;
unsigned char msgFormat; //消息格式
unsigned long msgLen; //消息长度
char msg[160]; //消息内容
};

struct MO_report{
unsigned long seq1; //相应的submit序列号1-3
unsigned long seq2;
unsigned long seq3;
unsigned char report_type;
char mobile[21]; //目的手机号
unsigned char state;//状态 0:发送成功 1:等待发送 2:发送失败
unsigned char errCode; //错误代码
}
void** pp_Mo是指向mo_msg或mo_report的指针;
我在delphi的转换是用静态连接的:
function SGIP_Get_Mo(var conn_id:integer;pp_MO:pointer):integer;cdecl;external 'sgipapi.dll' name '?SGIP_Get_MO@@YAHHPAPAX@Z';
应如何把函数pp_mo指向的内容用record的接收过来,请高手们指点指点,急.

 
联通有一个函数接口使用来接收上传信息的,包括状态报告函数头文件声明是:
SGIPAPI_API int SGIP_Get_MO(int conn_id,void **pp_MO);
struct MO_msg{
char sourceUser[21]; //发送消息的手机
char SPNumber[21]; //SP接入号
unsigned char tp_pid;
unsigned char tp_udhi;
unsigned char msgFormat; //消息格式
unsigned long msgLen; //消息长度
char msg[160]; //消息内容
};

struct MO_report{
unsigned long seq1; //相应的submit序列号1-3
unsigned long seq2;
unsigned long seq3;
unsigned char report_type;
char mobile[21]; //目的手机号
unsigned char state;//状态 0:发送成功 1:等待发送 2:发送失败
unsigned char errCode; //错误代码
}
void** pp_Mo是指向mo_msg或mo_report的指针;
我在delphi的转换是用静态连接的:
function SGIP_Get_Mo(var conn_id:integer;pp_MO:pointer):integer;cdecl;external 'sgipapi.dll' name '?SGIP_Get_MO@@YAHHPAPAX@Z';
应如何把函数pp_mo指向的内容用record的接收过来,请高手们指点指点,急.

 
后退
顶部