Delphi做的动态庫的头文件声明了以下结构体: T2001_DOOR_ACCESS = packed array[1..7, 1..7] of packed record
StartTime: Word; //起始时间
EndTime: Word; //结束时间
//时间是双秒制,即: 0=0:0:0 1=0:0:2 2=0:0:4 ... 43199=23:59:58
MoDay: Byte; //星期一是否有效 0=无效 1=有效
TuDay: Byte; //星期二是否有效 0=无效 1=有效
WeDay: Byte; //星期三是否有效 0=无效 1=有效
ThDay: Byte; //星期四是否有效 0=无效 1=有效
FrDay: Byte; //星期五是否有效 0=无效 1=有效
SaDay: Byte; //星期六是否有效 0=无效 1=有效
SuDay: Byte; //星期日是否有效 0=无效 1=有效
end; //注册卡数据结构 3002 bytes
T2001_CARD_LIST = packed record
CardCount: Word; //注册的卡的数量
Cards: packed array[0..999] of packed record //用户卡号
Cardzn: Byte; //区号
Cardid: Word; //卡号
end;
end;我在VB中调用动态庫,这两个结构体怎样定义呢?
谢谢先!
StartTime: Word; //起始时间
EndTime: Word; //结束时间
//时间是双秒制,即: 0=0:0:0 1=0:0:2 2=0:0:4 ... 43199=23:59:58
MoDay: Byte; //星期一是否有效 0=无效 1=有效
TuDay: Byte; //星期二是否有效 0=无效 1=有效
WeDay: Byte; //星期三是否有效 0=无效 1=有效
ThDay: Byte; //星期四是否有效 0=无效 1=有效
FrDay: Byte; //星期五是否有效 0=无效 1=有效
SaDay: Byte; //星期六是否有效 0=无效 1=有效
SuDay: Byte; //星期日是否有效 0=无效 1=有效
end; //注册卡数据结构 3002 bytes
T2001_CARD_LIST = packed record
CardCount: Word; //注册的卡的数量
Cards: packed array[0..999] of packed record //用户卡号
Cardzn: Byte; //区号
Cardid: Word; //卡号
end;
end;我在VB中调用动态庫,这两个结构体怎样定义呢?
谢谢先!
解决方案 »
- DataCombo1控件的用法,很急!
- 如何将在两个access文件间进行同步操作?需要代码实现
- mdb导出到dbf文件的问题?
- 操作数据库 弱智问题,哪位帮个忙!!
- 急...怎么实现让窗口为顶级窗口?
- 唉,如果这个功能实现,我的正式处子之作就算比较完美了,望专家来看看
- 如何获得word中某一图形的ID?
- 为什么安装水晶报表8.0后添加菜单找不到报表设计器?及其它设计问题
- 送分了!!!!!!!!!!!!!!!
- 怎么在VB/VC下,利用一个程序执行另一个程序呢?(谢谢指教)
- 100高分求:如何得到IE浏览器当前输入的网址
- 关于ADO连接远程Oracle的问题,请各位大大有空看一下,帮小妹我解决一下
T2001_DOOR_ACCESS = packed array[1..7, 1..7] of packed record
StartTime: Word; //起始时间
EndTime: Word; //结束时间
//时间是双秒制,即: 0=0:0:0 1=0:0:2 2=0:0:4 ... 43199=23:59:58
MoDay: Byte; //星期一是否有效 0=无效 1=有效
TuDay: Byte; //星期二是否有效 0=无效 1=有效
WeDay: Byte; //星期三是否有效 0=无效 1=有效
ThDay: Byte; //星期四是否有效 0=无效 1=有效
FrDay: Byte; //星期五是否有效 0=无效 1=有效
SaDay: Byte; //星期六是否有效 0=无效 1=有效
SuDay: Byte; //星期日是否有效 0=无效 1=有效
end;
----Type T2001_DOOR_ACCESS StartTime As Long
EndTime As Long
MonDay As Byte
TuDay As Byte //星期二是否有效 0=无效 1=有效
WeDay As Byte //星期三是否有效 0=无效 1=有效
ThDay As Byte //星期四是否有效 0=无效 1=有效
FrDay As Byte //星期五是否有效 0=无效 1=有效
SaDay As Byte //星期六是否有效 0=无效 1=有效
SuDay As Byte
End Type
T2001_DOOR_ACCESS = packed array[1..7, 1..7] of packed record 是定义一个二维数组的结构体,用VB怎么样表示呢?
那怎样定义呢?
To Benyfeifi:
我是不是应该这样做:
Type T2001_DOOR_ACCESS
StartTime As Long
EndTime As Long
MonDay As Byte
TuDay As Byte //星期二是否有效 0=无效 1=有效
WeDay As Byte //星期三是否有效 0=无效 1=有效
ThDay As Byte //星期四是否有效 0=无效 1=有效
FrDay As Byte //星期五是否有效 0=无效 1=有效
SaDay As Byte //星期六是否有效 0=无效 1=有效
SuDay As Byte
End Type Dim lRet as long
Dim byAcmID as byte
Dim MyAccess(1 to 7 , 1 to 7) as T2001_DOOR_ACCESS
....
lRet = F2001_SetDoorAccess(byAcmID,MyAccess)
....//以下是Delphi的动态庫声明:
T2001_DOOR_ACCESS = packed array[1..7, 1..7] of packed record
StartTime: Word; //起始时间
EndTime: Word; //结束时间
//时间是双秒制,即: 0=0:0:0 1=0:0:2 2=0:0:4 ... 43199=23:59:58
MoDay: Byte; //星期一是否有效 0=无效 1=有效
TuDay: Byte; //星期二是否有效 0=无效 1=有效
WeDay: Byte; //星期三是否有效 0=无效 1=有效
ThDay: Byte; //星期四是否有效 0=无效 1=有效
FrDay: Byte; //星期五是否有效 0=无效 1=有效
SaDay: Byte; //星期六是否有效 0=无效 1=有效
SuDay: Byte; //星期日是否有效 0=无效 1=有效
end;function F2001_SetDoorAccess(Acmid, Doorid: Byte; const DoorAccess: T2001_DOOR_ACCESS): Integer;
stdcall; external ACM2001DLLFILE;
{ Doorid: 门序号, 1 到 2 有效
}