请问都市夜猫大虾回答以下问题:

jamesfu 2011-11-21 04:54:02
vfp如何获取灵锐I的硬件"序列号":
我的代码:
Declare long LIV_open in living1.dll long,long,long@
Declare long LIV_get_hardware_info in living1.dll long handle,long@
LIV_open(vendor,0,@handle)
LOCAL info(4)
store 0 to info
LIV_get_hardware_info(handle,@info)
?LOCAL info(1) &&开发商编号
?LOCAL info(2) &&设备唯一序列号
?LOCAL info(3) &&生产日期
*结果得出全部三个是一样开发商编号
*查了一下:info是结构体类型,C#为
*public struct LIV_hardware_info
* {
* public int developerNumber; // 开发商编号
* [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)]
* public byte[] serialNumber; // 设备唯一序列号
* public int setDate; // 生产日期
* public int reservation; // 保留
* }
*问题是我要得出唯一序列号,及生产日期,如何设计这段代码?
...全文
71 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
都市夜猫 2011-11-21
我没有硬件,下面的代码你试试:
...
cInfo = replicate(chr(0), 4+8+4+4)
if 0 == LIV_get_hardware_info(handle, @cInfo)
? '开发商编号:', ctobin(substr(cInfo,1,4), 'rs')
? '设备唯一序列号:', substr(cInfo,1+4,8)
? '生产日期:', ctobin(substr(cInfo,1+4+8,4), 'rs')
endif

回复
jamesfu 2011-11-21
最前面忘了设初始变量,前加一行代码:
store 0 to handle,vendor
回复
相关推荐
发帖
VFP
创建于2007-09-28

2491

社区成员

VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
申请成为版主
帖子事件
创建了帖子
2011-11-21 04:54
社区公告
暂无公告