有C语言函数如下
函数名称:int WINAPI DJConf_GetGroupInfo ( WORD wGroupNo,
GROUP_INFO *TmpGroupInfo )
入口参数: wGroupNo ● 会议组号
TmpGroupInfo ● 指针:指向结构GROUP_INFO
函数返回: 0 ● 成功
-1 ● wGroupNo超出范围
功能描述:
获得当前某一组会议的有关信息。
在调用前,由应用程序负责分配结构GROUP_INFO的空间,然后将指针传给本函数。当调用完成后,在结构GROUP_INFO中将存有系统信息。#define MAX_MEMBER_NUM_PER_GROUP 32
typedef struct {
BYTE cbMode; // 在会议组中的方式
BYTE cbChnlType; // 通道类型
WORD wChnlNo; // 通道号
WORD wResNo; // 占用的MVIP通道(时隙)号
WORD wLDNo; // 内部用
} MEMBER_INFO; // 成员信息typedef struct {
WORD wMemberNum; // 本组会议当前的总成员数
WORD wResNum; // 本组会议占用的会议资源数
WORD wListenNum; // 本组会议中听的成员数
MEMBER_INFO MemberInfo[MAX_MEMBER_NUM_PER_GROUP]; // 成员信息
} GROUP_INFO;
我在Delphi里为:const MAX_MEMBER_NUM_PER_GROUP = 32;
type MEMBER_INFO= record //成员信息
cbMode: BYTE; //在会议组中的方式
cbChnlType: BYTE; //通道类型
wChnlNo: WORD; //通道号
wResNo: WORD; //占用的MVIP通道(时隙)号
wLDNo: WORD; //内部用
end;
type GROUP_INFO= record //会议组信息
wMemberNum: WORD; //本组会议当前的总成员数
wResNum: WORD; //本组会议占用的会议资源数
wListenNum: WORD; //本组会议中听的成员数
MemberInfo: array[0..MAX_MEMBER_NUM_PER_GROUP] of MEMBER_INFO; //成员信息
end;function DJConf_GetGroupInfo(wGroupNo : WORD; TmpGroupInfo : GROUP_INFO): integer; stdcall; far external 'tce1_32.dll'; //引用,tce1_32.dll为一动态链接库,JConf_GetGroupInfo为其一函数。var
groupinfo: GROUP_INFO;调用:
DJConf_GetGroupInfo(1,groupinfo);问题:
上面的引用是否正确?
调用是否正确?
如果不对,主问应该怎样?
函数名称:int WINAPI DJConf_GetGroupInfo ( WORD wGroupNo,
GROUP_INFO *TmpGroupInfo )
入口参数: wGroupNo ● 会议组号
TmpGroupInfo ● 指针:指向结构GROUP_INFO
函数返回: 0 ● 成功
-1 ● wGroupNo超出范围
功能描述:
获得当前某一组会议的有关信息。
在调用前,由应用程序负责分配结构GROUP_INFO的空间,然后将指针传给本函数。当调用完成后,在结构GROUP_INFO中将存有系统信息。#define MAX_MEMBER_NUM_PER_GROUP 32
typedef struct {
BYTE cbMode; // 在会议组中的方式
BYTE cbChnlType; // 通道类型
WORD wChnlNo; // 通道号
WORD wResNo; // 占用的MVIP通道(时隙)号
WORD wLDNo; // 内部用
} MEMBER_INFO; // 成员信息typedef struct {
WORD wMemberNum; // 本组会议当前的总成员数
WORD wResNum; // 本组会议占用的会议资源数
WORD wListenNum; // 本组会议中听的成员数
MEMBER_INFO MemberInfo[MAX_MEMBER_NUM_PER_GROUP]; // 成员信息
} GROUP_INFO;
我在Delphi里为:const MAX_MEMBER_NUM_PER_GROUP = 32;
type MEMBER_INFO= record //成员信息
cbMode: BYTE; //在会议组中的方式
cbChnlType: BYTE; //通道类型
wChnlNo: WORD; //通道号
wResNo: WORD; //占用的MVIP通道(时隙)号
wLDNo: WORD; //内部用
end;
type GROUP_INFO= record //会议组信息
wMemberNum: WORD; //本组会议当前的总成员数
wResNum: WORD; //本组会议占用的会议资源数
wListenNum: WORD; //本组会议中听的成员数
MemberInfo: array[0..MAX_MEMBER_NUM_PER_GROUP] of MEMBER_INFO; //成员信息
end;function DJConf_GetGroupInfo(wGroupNo : WORD; TmpGroupInfo : GROUP_INFO): integer; stdcall; far external 'tce1_32.dll'; //引用,tce1_32.dll为一动态链接库,JConf_GetGroupInfo为其一函数。var
groupinfo: GROUP_INFO;调用:
DJConf_GetGroupInfo(1,groupinfo);问题:
上面的引用是否正确?
调用是否正确?
如果不对,主问应该怎样?
type
PGROUP_INFO = ^GROUP_INFO;function DJConf_GetGroupInfo(wGroupNo : WORD; TmpGroupInfo : PGROUP_INFO): integer; cdecl;external 'tce1_32.dll';var
groupinfo: PGROUP_INFO;DJConf_GetGroupInfo(1,groupinfo);你可以这样子试试,不保证完全正确,^_^
在record前面加上packedtype GROUP_INFO=packed record //会议组信息
wMemberNum: WORD; //本组会议当前的总成员数
wResNum: WORD; //本组会议占用的会议资源数
wListenNum: WORD; //本组会议中听的成员数
MemberInfo: array[0..MAX_MEMBER_NUM_PER_GROUP] of MEMBER_INFO; //成员信息
end;function DJConf_GetGroupInfo(wGroupNo : WORD;var TmpGroupInfo : GROUP_INFO): integer; stdcall; far external 'tce1_32.dll'; //引用,tce1_32.dll为一动态链接库,JConf_GetGroupInfo为其一函数。