DLL中函数定义如下:
long __stdcall dc_load_key_hex |
( |
long |
icdev, |
|
|
unsigned char |
_Mode, |
|
|
unsigned char |
_SecNr, |
|
|
unsigned char * |
_NKey |
|
|
) |
|
|
|
下载设备密码(HEX形式)
- 说明:
- dc_load_key函数的HEX形式,字符串数据将以HEX形式传递。
如果是stringbuilder,FT中定义如下,但是进一步校验密码出错。
Public Declare Function dc_load_key_hex Lib "Trf32.dll" (ByVal icdev As Long, ByVal mode%, ByVal secnr%, ByRef nkey As Stringbuilder) As Long
dim nkey as new Stringbuilder
(dim nkey as new Stringbuilder(24),也尝试过了,不工作)
如果是数组的话,FT中是否定义如下?
Public Declare Function dc_load_key_hex Lib "Trf32.dll" (ByVal icdev As Long, ByVal mode%, ByVal secnr%, ByRef nkey As Byte) As Long
dim nkey(12) as byte
nkey(0)=102
nkey(1)=102
....
我昨天也尝试过,但是直接内存访问出错了,我可以在试一试。
如何把数组的指针传递过去呢?下面这样对吗?
Result = dc_load_key_hex(Vars("IcDev"), PWmode, secnr, nkey(0))
[此贴子已经被作者于2014-11-2 14:52:21编辑过]