VC写的DLL中有如下三个内容::3. Search IC:
int WINAPI Inventory(uc8* buf,us8 &count,us8 timeout);
uc8 buf[128];
us8 cnt = 5;
ret = _Inventory(buf,cnt,500);//Timeout500
The cnt is IC Count while return OK, ID length is 8 and ID has been save to buf4. Read Simply Block:
int WINAPI ReadSingleBlock(uc8* buf,byte block,us8 opmode);
Description:
Block: block index of IC //0~63
Opmode: mode of operate
Use:
if(mode == AddressMode)
{
uc8 dat[ID_LENGTH];
..//ID length is 8
ret = _ReadSingleBlock(dat,0,mode);
if(ret==RET_OK)
{
Recive block data to dat, the data length is SINGLE_BLOCK_SIZE//
}
}
else
{
uc8 dat[SINGLE_BLOCK_SIZE];
memset(dat,0,SINGLE_BLOCK_SIZE);
ret = _ReadSingleBlock(dat,cmbBlock->ItemIndex,mode);
if(ret==RET_OK)
{
//other
}
}5. Write simply Block:
int WINAPI WriteSingleBlock(uc8* id,uc8* buf,byte block,us8 opmode);
Description:
Id: IC 的ID
Block: block index of IC //0~63
Opmode: mode of operate
Use:
us8 mode = … ;
if(mode == AddressMode)
{
uc8 id[ID_LENGTH];
uc8 dat[ID_LENGTH];
memset(id,0,ID_LENGTH );
memset(dat,0,SINGLE_BLOCK_SIZE);
ret = _WriteSingleBlock(id,dat,block,mode); //need ID
}
else
{
uc8 dat[SINGLE_BLOCK_SIZE];
memset(dat,0,SINGLE_BLOCK_SIZE);
HexToBin2(edtData->Text,dat);
ret = _WriteSingleBlock(NULL,dat, block,mode); // needlessness ID}
请问在delphi中怎么调用啊???????????
求组各位大哥 在线等答案~~~
int WINAPI Inventory(uc8* buf,us8 &count,us8 timeout);
uc8 buf[128];
us8 cnt = 5;
ret = _Inventory(buf,cnt,500);//Timeout500
The cnt is IC Count while return OK, ID length is 8 and ID has been save to buf4. Read Simply Block:
int WINAPI ReadSingleBlock(uc8* buf,byte block,us8 opmode);
Description:
Block: block index of IC //0~63
Opmode: mode of operate
Use:
if(mode == AddressMode)
{
uc8 dat[ID_LENGTH];
..//ID length is 8
ret = _ReadSingleBlock(dat,0,mode);
if(ret==RET_OK)
{
Recive block data to dat, the data length is SINGLE_BLOCK_SIZE//
}
}
else
{
uc8 dat[SINGLE_BLOCK_SIZE];
memset(dat,0,SINGLE_BLOCK_SIZE);
ret = _ReadSingleBlock(dat,cmbBlock->ItemIndex,mode);
if(ret==RET_OK)
{
//other
}
}5. Write simply Block:
int WINAPI WriteSingleBlock(uc8* id,uc8* buf,byte block,us8 opmode);
Description:
Id: IC 的ID
Block: block index of IC //0~63
Opmode: mode of operate
Use:
us8 mode = … ;
if(mode == AddressMode)
{
uc8 id[ID_LENGTH];
uc8 dat[ID_LENGTH];
memset(id,0,ID_LENGTH );
memset(dat,0,SINGLE_BLOCK_SIZE);
ret = _WriteSingleBlock(id,dat,block,mode); //need ID
}
else
{
uc8 dat[SINGLE_BLOCK_SIZE];
memset(dat,0,SINGLE_BLOCK_SIZE);
HexToBin2(edtData->Text,dat);
ret = _WriteSingleBlock(NULL,dat, block,mode); // needlessness ID}
请问在delphi中怎么调用啊???????????
求组各位大哥 在线等答案~~~
解决方案 »
- 一个动态申请内存并释放的问题
- 只一个按钮,把ACCESS内A,B,C三个表数据导进SQL SERVE内A,B,C三个表中,多谢!
- 论坛新开张啦!版主任你做!
- memo控件问题,为了不让取memo中文本把memo设置成enable但字体变灰色了,怎么让他恢复成原色?
- 请问spinEdit组件在哪里?
- slq sever数据库的多个用户同时编辑其中的相同记录,怎样保证不死锁?
- 关于DELPHI中操作ACCESS2000数据库中单精度数据的问题?
- 请问各位怎样定义一个结构体指针的数组
- 关于操作注册表的问题!!
- 更正,no visual c,delphi it is,和速达2000几乎完全一样的表单录入控件!!
- 今天上午一不小心抓住了机会,散点分
- 调用VC写的DLL出现问题
us8? unssigned short?type
uc8 = UCHAR;
pUC8 = ^uc8;
us8 = WORD;
pUS8 = ^us8;function Inventory(buf: pUC8; var count: us8; timeout: us8): Integer; stdcall; external 'yourDllName.dll';
function ReadSingleBlock(buf: pUC8; block: Byte; opmode: us8): Integer; stdcall; external 'yourDllName.dll';
function WriteSingleBlock(id, buf: pUC8; block: Byte,opmode: us8): Integer; stdcall; external 'yourDllName.dll';
#define us8 unsigned short
#define ul32 unsigned long