5,914
社区成员




今天十几台机子突然运行不了D12.2编译的应用了,其他机子正常,折腾了半天,没有搞定。
恢复到D10.3.3,编译运行,一切正常。
有没有破解之法?
机子的信息是 zhaoxin kaixian KX-u6780A@2.7GHz
你可以这么试一下:
在国信的win7机器上使用管理员权限进入cmd窗口,输入:
bcdedit /set xsavedisable 1
然后可能需要重启,之后再运行D12编译的程序试试
结贴吧:
盒子上一位码友也证实了11和12编译的不能在国产CPU上运行,海光 兆芯+win10 win7均不行,退回10.4编译成功运行。
所以,不用在编译和系统上找问题了,行不通。老老实实的用10吧。
我也刚把11.3,12.1也都试了一下,统统不行。
打电话问了一下厂商,人家回复说需要适配,但只提供国产操作系统的适配,其他系统不负责。
单位技术人员说,看看高版本的能不能修改成低版本的动态链接库,这是唯一的办法。但我不会修改。
所以,11以上从编译和系统上找原因这个路我是走不通的。只能放弃了,也死心了。
看来,国产化任重道远啊。
奇怪,D12.2不支持bpl模块,已退回D12.1
应该不是CPU的问题,出现runtime error是因为没有安装全局异常处理,uses System.SysUtils,可以显示更详尽的异常信息。
你这找的方面应该就有问题,你自己已经把问题点固化到“CPU”相关了。如果与CPU相关,那么,在所有版本下应该都不能运行。所以问题点可能还是在系统相关。
最好能有调试日志,或者能直接调试。
我一退回10.4.2了,10.3.3和10.4.2都可以正常使用,没办法,只能妥协了。
总结一下问题:
1、D2.2编译的在国信win7机子上突然不能用了,不知道那个统一升级破坏了什么文件导致的。国信win10机子上正常。
2、D10编译的在所有机子上都支持,不管是win7还是win10。
3、运行的现象是,直接提示关闭应用,根本就没有执行任何代码。提示错误信息如上图,点击关闭应用,继续弹出一个错误框,提示runtime error 255 XXXX。
4、即使创建一个空窗体,也是如此。
5、一个奇怪的现象,原来D10创建的一个应用,D12.2编译后国信win7上能正常运行,但其他的D10创建的D12编译一概不行。
看来不能随意尝试新东西,后续等高手破解吧。
异常c000001d是非法指令,所以最大可能性是12.2编译的代码中有兆芯处理器不支持的指令,或者该指令的执行结果和intel、AMD的设计不一致(实际上intel和AMD的个别指令执行结果也是不一致的)。
你可以用12.2带调试信息编译,在IDE中运行,会自动断点在出现问题的指令位置。
再次懵逼。
1、D12新建一个窗口,在国信不能运行
2、D10新建一个窗口,在国信可以运行
3、有一个D12以前用D10的建的小软件,D12编译后,国信可以运行?奇大怪了
3、D10建一个新窗口,运行,然后,用D12编译,国信还是不行能运行,我去。我开始怀疑D12创建的文件有什么玩意不兼容,看来不是。
4、但有一台国信例外,什么都能运行。
毫无规律可言,没招了
11月,D10.4改用D12编译后应用文件上传服务器,这个小组12月份肯定下载使用过,且运行正常。
今天,需要季度结转了,运行软件出现崩溃。
小组9人,均是报账人员,使用统一的国信机子,不能插U盘,使用的报账软件也是web版的,全部崩溃,我咨询了报账软件的开发人员,没有安装本地插件。
另外一人,是其他小组人员,使用相同的机子,但基本不用报账系统。使用D12编译的同版本的应用,没有问题。
现在初步确定,机子基本确认支持D12,一是因为另一个人使用没问题,我用D12编译了另外一个小应用,小组所有的人用也没有问题。
问题:一个可能是这个应用的某条指令冲突,但为什么D10的就可以用?一个可能是和小组成员的其他软件冲突,但其他几十人都有相同的应用为什么不冲突?三可能是某个驱动出问题了,小组并没有统一升级什么驱动。
一脸懵逼中
看不出什么问题
管理工具->事件查看器->windows 日志->应用程序,找到你的程序崩溃的事件记录看看