起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: 泉海天轻纺

【搞定】怎样定义数组(?)**

[复制链接]
发表于 2007-9-3 16:59:06 | 显示全部楼层
楼上的问题,搞定
  retcode := GCUSB.head.et_GetSN(hET99, @buffer[0]);    @buffer[0]   用指针的请问有什么方法可以辟开?
回复 支持 反对

使用道具 举报

发表于 2007-9-3 17:02:26 | 显示全部楼层
因为et_GetSN函数原型 第2个参数就要求是指针参数
回复 支持 反对

使用道具 举报

发表于 2007-9-3 17:07:39 | 显示全部楼层
在导入控件时,把这个方法重新封装一下
回复 支持 反对

使用道具 举报

发表于 2007-9-3 17:16:49 | 显示全部楼层
可以在delphi里面先对此函数封装成不传入指针的。然后使用封装后的接口。
回复 支持 反对

使用道具 举报

发表于 2007-9-3 17:17:05 | 显示全部楼层
那样,编译可以通过, 运行出错.别的方法有吗?
回复 支持 反对

使用道具 举报

发表于 2007-9-3 17:19:56 | 显示全部楼层
运行出什么错误?
回复 支持 反对

使用道具 举报

发表于 2007-9-3 17:24:32 | 显示全部楼层
var
  buffer: array of char;
  retcode,I: Integer;
begin
  SetLength(buffer, 512);
  for I := 0 to 511 do
     buffer[I] := char(0);

   retcode := GCUSB.head.et_GetSN(hET99, buffer[0]); <----错误定位如图
   for I := 0 to 7 do
   begin
    Result := Result + IntToHex(byte(buffer[I]),2)+' ';
   end;

32.png

5.48 KB, 下载次数: 196

回复 支持 反对

使用道具 举报

发表于 2007-9-3 17:39:22 | 显示全部楼层
楼主,你对这个函数是怎么封装的?
回复 支持 反对

使用道具 举报

发表于 2007-9-4 08:40:19 | 显示全部楼层
function et_GetSN(handle:THandle; buffer512:pchar):integer;stdcall;external DLL_NAME;
在平台里把第2个参数Pchar 认成String
回复 支持 反对

使用道具 举报

发表于 2007-9-4 08:41:06 | 显示全部楼层
function et_GetSN(handle:THandle; buffer512:  pchar):integer;stdcall;external DLL_NAME;
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-16 00:19 , Processed in 0.039580 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表