在调用DLL时,定义的接口函数方式为:
function CloseComm:boolean; stdcall external 'aaa.dll';
然后在事件中调用:
procedure TForm1.BtnCloseComClick(Sender: TObject);
begin
CloseComm;
end;
------------------------------------------------------------
编译能通过,执行程序,然后什么操作都不错,直接点击关闭,就会弹出抛出异常信息:“System Error. Code 2.系统找不到指定的文件。”
这是什么原因造成的?
这个DLL肯定是正确的。调用方式也是正确的。我在其他Delphi程序中已经使用过,另外用C#也调用过,没问题的。
function CloseComm:boolean; stdcall external 'aaa.dll';
然后在事件中调用:
procedure TForm1.BtnCloseComClick(Sender: TObject);
begin
CloseComm;
end;
------------------------------------------------------------
编译能通过,执行程序,然后什么操作都不错,直接点击关闭,就会弹出抛出异常信息:“System Error. Code 2.系统找不到指定的文件。”
这是什么原因造成的?
这个DLL肯定是正确的。调用方式也是正确的。我在其他Delphi程序中已经使用过,另外用C#也调用过,没问题的。
解决方案 »
- 正则表达式问题
- 为什么我要修改记录,但保存后却增加了一条记录呢?[
- 请教:报表的问题。需要每页小计紧随数据行,主要是最后一页不能让小计出现在页尾底部。
- 新建QQ群,欢迎广大delphi爱好者加入.群号:25203676
- 关于组件在form中变化的问题
- stringgridex是for D6的还是for D5的?dsgnintf.dcu怎么解决的啊?你们是怎么装的?
- 郁闷,散分!!!!!!
- "update"SQL语句的疑惑?
- 急聘delphi程序员
- delphi6安装序列号,在线等待
- 怎样实现DBGrid中数据实时更新呢?是手工更新吗?听说用Timer可以实现。高手指点!!!
- delphi7中的字符串倒置函数是什么?
“Invalid Pointer operation”.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls ;type
TForm1 = class(TForm)
Label1: TLabel;
EdtCardNo0: TEdit;
EdtCardNo1: TEdit;
EdtCardNo2: TEdit;
EdtCardNo3: TEdit;
BtnOpenCom: TButton;
Button1: TButton;
lbMsg: TLabel;
BtnCloseCom: TButton;
Button2: TButton;
procedure BtnCloseComClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation {$R *.dfm}
function OpenComm(CommN,BaudRate:integer):boolean;stdcall external 'aaa.dll';
function CloseComm:boolean; stdcall external 'aaa.dll';{ TForm1 }procedure TForm1.BtnCloseComClick(Sender: TObject);
begin
if CloseComm then
ShowMessage('关闭端口成功!')
else
ShowMessage('关闭端口失败!');
end;end.
到win98下试一试