"0x007b393e"指令引用的“0x0160a954"内存,该内存不能为“read" 怎么办???(100分)

  • 主题发起人 主题发起人 w9011
  • 开始时间 开始时间
W

w9011

Unregistered / Unconfirmed
GUEST, unregistred user!
"0x007b393e"指令引用的“0x0160a954"内存,该内存不能为“read" 怎么办???
要终止程序,请单击“确定"
程序运行完后,点退出 win2000下出三次这样的错,98下出非法操作
我的程序结构
主程序-----若干dll程序,adoconnect 传入,每次调用dll,退出
时free掉,....
怎么还是出现上述情况,
确认后,程序确实完全退出!
怎么回事??????????????

 
估计不是缓冲区越界,就是有未初始化的指针. 另外和调用DLL时的参数类型也有关.
 
你单步执行嘛,调试看一下具体是什么错?退出Free什么呀。
在FormDestory事件中Free吧。你Free掉的东西可能在哪里还用了。
 
早晨试了,
1,把程序分解开,各自执行相应的exe文件,程序关闭时不发生任何错误,
2,主程序调用相应dll时,不打开dll关闭主程序也提示非法错误,

程序示例:
主程序:procedure showdfxxt(H: THandle;AConn: TADOConnection;czym,czyxm,czyqx :string); cdecl;
external '../dfxxt5.0_6/dlldfxxt.dll';{ 指定过程来源 }
procedure TFrmmmain.N03Click(Sender: TObject);
begin
showdfxxt(Application.Handle,Datampub.Adocondf1,Gczym,Gczyxm,Gczyqx);
end;
dll程序
dpr: library dlldfxxt;

uses
SysUtils,
Classes,
Main in 'Main.pas' {MainForm},
Lfloor in 'Lfloor.pas' {FrmLfloor},
pview in 'pview.pas' {Frmpview},
setpara in 'setpara.pas' {Frmsetpara},
Unit1 in 'Unit1.pas' {Form1},
datamo in '../public/datamo.pas' {DataMpub: TDataModule},
gncolor in 'gncolor.pas' {Frmgncolor},
zbjclb in 'zbjclb.pas' {Frmzbjclb};

{$R *.res}
exports
showdfxxt;
begin
end;

mainform:
procedure showdfxxt(H:THandle;AConn: TADOConnection;czym,czyxm,czyqx :string);cdecl;

procedure showdfxxt(H:THandle;AConn:TADOConnection; czym,czyxm,czyqx :string);
begin
application.Handle:=H;
Application.CreateForm(TDatampub,Datampub);
with TMainForm.Create(Application) do
try
Datampub.Adocondf1 := AConn;
Datampub.Mczym :=czym;
Datampub.Mczyxm :=czyxm;
Datampub.mczyqx:=czyqx;
ShowModal; { 模式化显示窗体 }
finally
Free; {调用结束时销毁窗口}
end;
Datampub.Free;
end;


备注:程序运行没有任何错误,但就是退出时,出现非法错误(98下)
在2000下偶尔发生
"0x007b393e"指令引用的“0x0160a954"内存,该内存不能为“read" 怎么办???
要终止程序,请单击“确定"
错误
望各位多发表看法,我错在那里????




 
这样写有错误吗??
 
好像是Windows本身的问题,我用VB编COM组件时,如果带代码调试也会出现上述现象。
 
在主窗体的ONCLOSE里加代码如:
if not assigned(datampub) then
datampub.free;
 
我的win2000有这样的问题,似乎和系统有关,与你的程序好像没什么关系。
内存条?
超频?
 
同样的程序,各自运行exe 文件没问题,
改为dll则关闭时总是出些意外的错,客户用起来很不雅观,
有没有其它的使运行的软件不大,分为多个关联文件,dll或者其他。。。
我把所有的程序转成一个exe文件,太大上5M,还有许多美加进来,
一个项目,通常怎样组织程序模块结构???????????????
 
http://nizvoo.51.net/error.gif
我的也是一样啊
 
兄弟,有可能是病毒哟!
 
我在打开程序是会出现这种错误,不知是为什么?
 
大家知道如何屏蔽这类错误吗?也就是不让客户看到
 

Similar threads

回复
0
查看
621
不得闲
回复
0
查看
1K
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部