DLL在VC里面的定义DllAPI bool __stdcall SetReaderSelectParm(GEN2_SELECT_SETTINGS *pSelectSettings,byte *pBytMaskBit)struct GEN2_SELECT_SETTINGS
{
C1G2Bank BankSelect;
byte Action;
SELECTTARGET Target;
WORD WordStartBitPoint;
byte MaskBitLength;
bool bTruncate;
};
DLL需要输入结构和byte数组的指针
本人对delphi不熟,现在边学边看把结构和定义都写好了,不知道哪里出问题,请大家看看 type
GEN2_SELECT_SETTINGS=record
BankSelect:C1G2Bank;
Action:byte;
Target:SELECTTARGET;
WordStartBitPoint:integer;
MaskBitLength:byte;
bTruncate:boolean;
end;
pGEN2_SELECT_SETTINGS=^GEN2_SELECT_SETTINGS;function SetReaderSelectParm(pSelectSettings:pGEN2_SELECT_SETTINGS;pBytMaskBit:pByte):boolean;stdcall; external 'QuanrayReader.dll';BUTTON里面的部分代码var pBytMaskBit:PByteArray;
var pSelect_para:pGEN2_SELECT_SETTINGS;
var BytMaskBit: array[1..200] of byte;中间代码把BytMaskBit,机构体分别赋值
然后获取指针地址 pBytMaskBit:=@BytMaskBit[1];
pSelect_para:=@Select_para; if SetReaderSelectParm(pSelect_para,pBytMaskBit) then ShowMessage('ok!') else ShowMessage('error!');
现在编译都没通,估计是声明方面有问题:
if SetReaderSelectParm(pSelect_para,pBytMaskBit) then ShowMessage('ok!') else ShowMessage('error!');
[错误] Unit1.pas(579): Incompatible types: 'TByteArray' and 'Byte'
请大家帮下忙,谢谢!!!
{
C1G2Bank BankSelect;
byte Action;
SELECTTARGET Target;
WORD WordStartBitPoint;
byte MaskBitLength;
bool bTruncate;
};
DLL需要输入结构和byte数组的指针
本人对delphi不熟,现在边学边看把结构和定义都写好了,不知道哪里出问题,请大家看看 type
GEN2_SELECT_SETTINGS=record
BankSelect:C1G2Bank;
Action:byte;
Target:SELECTTARGET;
WordStartBitPoint:integer;
MaskBitLength:byte;
bTruncate:boolean;
end;
pGEN2_SELECT_SETTINGS=^GEN2_SELECT_SETTINGS;function SetReaderSelectParm(pSelectSettings:pGEN2_SELECT_SETTINGS;pBytMaskBit:pByte):boolean;stdcall; external 'QuanrayReader.dll';BUTTON里面的部分代码var pBytMaskBit:PByteArray;
var pSelect_para:pGEN2_SELECT_SETTINGS;
var BytMaskBit: array[1..200] of byte;中间代码把BytMaskBit,机构体分别赋值
然后获取指针地址 pBytMaskBit:=@BytMaskBit[1];
pSelect_para:=@Select_para; if SetReaderSelectParm(pSelect_para,pBytMaskBit) then ShowMessage('ok!') else ShowMessage('error!');
现在编译都没通,估计是声明方面有问题:
if SetReaderSelectParm(pSelect_para,pBytMaskBit) then ShowMessage('ok!') else ShowMessage('error!');
[错误] Unit1.pas(579): Incompatible types: 'TByteArray' and 'Byte'
请大家帮下忙,谢谢!!!
解决方案 »
- 我已经两个星期都想也想出来的问题
- Delphi是不是没个控件都有名称,而且控件的名称是不是唯一的?
- 版主来看一下,为什么别人提交的FAQ通过审核后都加信誉分,我怎么不加?
- delphi 有没有 like 比较运算符,没有如何实现 like 功能??
- 各位大虾,在DELPHI7我怎么也找不到象DELPHI6下Tclientsock的socket封装控件(帮帮忙)
- 请问多帐套,怎么注册?目前注册的信息只能存在一个数据库里。
- 基础问题!!!
- 各位真诚的朋友,给我一个你的建议吧。(关于做计算机教师的)
- 哪位大哥帮小弟一个忙
- 如何在QuickRep控件中加一列显示序号?
- 为何窗体显示时DBGRID表格周围要晃动1秒钟左右?
- 关于widechar和string的问题!
应该不要pointer吧