delphi6 编译程序的时候,出现 ntdll.dll 错误? 有出现类似情况的兄弟吗?(100分)

  • 主题发起人 主题发起人 dfoversky
  • 开始时间 开始时间
D

dfoversky

Unregistered / Unconfirmed
GUEST, unregistred user!
对话框弹出错误:
Access violation at address 7C9322BA in module 'ntdll.dll' .Read of address 0AC74310.

编译信息:
[Fatal error] Out of memory

好像是超出内存了,不知道什么原因。(我机器是 XP 系统,delphi6)
 
从控件里取到空字符串是就是有这个问题,比如说:TCombobox控件,你有一个Items.text='',那么当你把这个ITEM设置成当前的时候,就会提示你说的这种错误!
 
你可以这样:Items.text=' ',中间加个空格,这样就没问题了
 
To 由由(love)
能具体举个例子吗?我没有试出来哦。
我窗体上放了一个:ComboBox1,items设置成:
1
2

3

procedure TForm1.Button1Click(Sender: TObject);
begin
ComboBox1.ItemIndex:=2;
end;

没有出错。不知道是不是你说的这个意思。
 
年前我也出了这个问题。怎么也找不到原因。后来重写了。呵呵
 
和程序有关吗? 还是和系统有关呢?
 
把DELPHI关了 重新打开 再编译就没有问题了
原因不清楚 好像是工程大了以后会出现这种情况 特别是编译后的EXE很大的时候
 
生成的EXE,20多M,不知道delphi里有没有什么选项。
 
我也遇到过,delphi要重新注册一下就好了,我分析可能是宝兰检测到盗版之类的问题
 
To ykxiong1
怎么更新注册呢?
 
应该是代码的问题,一个exe,20多m,也忒大了点
 
在代码里面多半是有 从库里面读取数据 添加到 combobox.items 的,如果有null,'' 之类的数据,而且添加到 items[0] (第一个数据) 里面 就要报此错误,其他还有反盗版也有,还有其他内存泄露,数组超界等.
 
控件太多,生成的exe太大照成的
 
生成 20m 的 exe 很罕见的,应该是你的 exe 中带 debug 信息了,取消 options 中 linker 中的 include td32 debug info 选项即可。
 
include td32 debug info 是取消的。
一般出现这个问题是这样的:编译生成文件成功了,但是刚运行就出那个 ntdll.dll 出错。是不是跟运行的设置有关呢?
 
lZ 肯定把代码放在中文目录了,然后双击打开Project 文件编译的 而不是打开Delphi 后 打开Project 文件 ,以前碰到过
 
to:newbag
是放在中文目录里了,不过都是先打开delphi 再打开工程的。
有的时候出那个 ntdll.dll 错误,有的时候就不出。
 
这个问题我知道,嘿嘿,不告诉你。
 
To lisongmagic
这个问题我知道,嘿嘿,不告诉你。
呵呵,你真行。。。。
 
节贴,,,不知道啥原因,现在又不出了。。。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
948
import
I
I
回复
0
查看
893
import
I
I
回复
0
查看
795
import
I
后退
顶部