D12.2不支持国信的CPU

秋天之落叶 2025-01-08 11:41:20

今天十几台机子突然运行不了D12.2编译的应用了,其他机子正常,折腾了半天,没有搞定。
恢复到D10.3.3,编译运行,一切正常。
有没有破解之法?
机子的信息是 zhaoxin kaixian KX-u6780A@2.7GHz

...全文
693 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

你可以这么试一下:
在国信的win7机器上使用管理员权限进入cmd窗口,输入:
bcdedit /set xsavedisable 1
然后可能需要重启,之后再运行D12编译的程序试试

  • 举报
回复
@日立奔腾浪潮微软松下联想 好,上班了试一下
tanqth 02-27
  • 打赏
  • 举报
回复

很早前就给你分析了,同样的硬件,不同的操作系统,不能使用那是操作系统不兼容问题。

  • 举报
回复
@tanqth 仅限国信的机子,intel的就没问题。
  • 打赏
  • 举报
回复
最新测试,单位新进三台国信机子,hygon c86-3g(opn:3350),全部安装win10。D12.2编译的程序可用。 以前的zhaoxin+win7不可用。zhaoxin+win10可用。 就是这样。
  • 举报
回复
@秋天之落叶 如此看来,是操作系统的问题了
@秋天之落叶 海光处理器的知识产权和安全性都有问题,还不如兆芯。
  • 举报
回复
@秋天之落叶 另外,今天又到了10台机子,安装hygon c86-3g(opn:3350)+win7也是不可运行。至此可以判定,国信机子+win7不支持D11和D12已成定局,不用白费功夫了。要想正常运行,必须是win10以上才可以。
  • 打赏
  • 举报
回复

结贴吧:
盒子上一位码友也证实了11和12编译的不能在国产CPU上运行,海光 兆芯+win10 win7均不行,退回10.4编译成功运行。
所以,不用在编译和系统上找问题了,行不通。老老实实的用10吧。
我也刚把11.3,12.1也都试了一下,统统不行。
打电话问了一下厂商,人家回复说需要适配,但只提供国产操作系统的适配,其他系统不负责。
单位技术人员说,看看高版本的能不能修改成低版本的动态链接库,这是唯一的办法。但我不会修改。
所以,11以上从编译和系统上找原因这个路我是走不通的。只能放弃了,也死心了。
看来,国产化任重道远啊。

  • 举报
回复
@秋天之落叶 不过,我有一个比较特殊的是,只有一位同事装了win10,目前12.2编译的还可以运行,不知道为什么,目前尚不能增加同型号机子用win10的范围,只能等再有新机的时候测试了。
cq_bmy 01-15
  • 打赏
  • 举报
回复

奇怪,D12.2不支持bpl模块,已退回D12.1

  • 打赏
  • 举报
回复

应该不是CPU的问题,出现runtime error是因为没有安装全局异常处理,uses System.SysUtils,可以显示更详尽的异常信息。

tanqth 01-12
  • 打赏
  • 举报
回复

你这找的方面应该就有问题,你自己已经把问题点固化到“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中运行,会自动断点在出现问题的指令位置。

  • 举报
回复
@日立奔腾浪潮微软松下联想 这个解释比较靠谱,我试一下
  • 举报
回复
@日立奔腾浪潮微软松下联想 但是我用12创建一个空白窗体,也运行不了,最基本的单元了。 而以前用10建立的一个小应用,12编译后却能运行,相互矛盾啊?
@秋天之落叶 空项目调试运行一下
  • 打赏
  • 举报
回复

再次懵逼。
1、D12新建一个窗口,在国信不能运行
2、D10新建一个窗口,在国信可以运行
3、有一个D12以前用D10的建的小软件,D12编译后,国信可以运行?奇大怪了
3、D10建一个新窗口,运行,然后,用D12编译,国信还是不行能运行,我去。我开始怀疑D12创建的文件有什么玩意不兼容,看来不是。
4、但有一台国信例外,什么都能运行。
毫无规律可言,没招了

@秋天之落叶 不同程序引用的单元未必是完全一样的。这一台的CPU和其他的未必是同一批次,用CPUID看一下
  • 打赏
  • 举报
回复

11月,D10.4改用D12编译后应用文件上传服务器,这个小组12月份肯定下载使用过,且运行正常。
今天,需要季度结转了,运行软件出现崩溃。
小组9人,均是报账人员,使用统一的国信机子,不能插U盘,使用的报账软件也是web版的,全部崩溃,我咨询了报账软件的开发人员,没有安装本地插件。
另外一人,是其他小组人员,使用相同的机子,但基本不用报账系统。使用D12编译的同版本的应用,没有问题。
现在初步确定,机子基本确认支持D12,一是因为另一个人使用没问题,我用D12编译了另外一个小应用,小组所有的人用也没有问题。
问题:一个可能是这个应用的某条指令冲突,但为什么D10的就可以用?一个可能是和小组成员的其他软件冲突,但其他几十人都有相同的应用为什么不冲突?三可能是某个驱动出问题了,小组并没有统一升级什么驱动。
一脸懵逼中

  • 打赏
  • 举报
回复

看不出什么问题

img

img

  • 打赏
  • 举报
回复

管理工具->事件查看器->windows 日志->应用程序,找到你的程序崩溃的事件记录看看

  • 打赏
  • 举报
回复
看错误提示是appcrash错误,网上攻略也看了,准备下手了,不知结果如何。 记得是11月份还能用,今天突然都不能用了。

5,914

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧