当前位置:主页>仓库管理软件> 列表

奇怪问题!!!!,外壳问题 找免费财务软件

仓库管理软件版1楼: 我原来定义一个结构如下:
TComputerItem=record
IP:array [0..20 ] of char;
HostName:array [0..20] of char;
end;
编成DLL供explorer.exe调用,不会出错误,后觉得这样定义不合是,重新定义如下:
TComputerItem=record
uSize:DWORD;
Data:array [0..0] of byte;
end;
其中Data包含由uSize决定的长度的任意数据,现在惨了,explorer.exe调用这个DLL,发现explorer.exe居然会产生 TComputerItem=record
IP:array [0..20 ] of char;
HostName:array [0..20] of char;
end;
和 TComputerItem=record
uSize:DWORD;
Data:array [0..0] of byte;
end;
的两种混合数据,有时上面的那种,有时下面那种,访问上面那种当然要出错:内存不可读,奇怪呀????,explorer.exe似乎记住了以前的那种数据格式,把DLL删了重新编译,甚至重启N遍操作系统,explorer.exe似乎永远记住了以前的那种数据格式,有谁知道这到底是怎么会事????谢谢。

2楼: 奇怪奇怪~~~~~~,该DLL在别处不会出内存不可读问题,但显示的居然是我的计算机而不是它本地计算机,而我的计算机和那台计算机根本不相联! 如免费财务软件

3楼: 郁闷呀!!!!,我现在改什么,explorer.exe就记住什么,改的越多,错的越多,我仅仅是改结构定义呀~~~,有谁知道是explorer.exe的错还是Delphi的错?????

4楼: 现在又正常了,就是加了许多MessageBox,然后又删除那些MessageBox,好了,莫名其妙!!!,我现在都不敢改结构了,有谁知道是谁的问题??

5楼: 帮顶...



DELPHI有时候就是这样的,重新建一个项目,把代码再复制过来就好了...
我有时候就这样干的

6楼: 呵呵,关机再开机,再Rebuild一遍