程序“[16980] OpenRoadsUltimateChina.exe”已退出,返回值为 -1073740791 (0xc0000409)。
各位老师, ORD中国版报这个错误闪退是什么原因? 版本号是:OpenRoadsDesignerUltimateforChina_x64_10.10.20.26_zh-CN, 请各位老师帮忙解决一下, 卡在这一步了
老师, 这个方法我之前试过了, 发现同一个DGN文件, 每次程序崩溃的位置都不一样, 而且, 单步执行就不会崩溃闪退, 现在就是不明白为啥ORD会不报错, 直接闪退, 还有就是ORD闪退报的错(返回值为 -1073740791 (0xc0000409)。)是什么意思
老师, 我也试了用不同的文件测试, 发现都是这样, ORD直接闪退报错, 错误代码都一样
程序“[16912] OpenRoadsUltimateChina.exe”已退出,返回值为 -1073740791 (0xc0000409)。
宁小雨 said:单步执行就不会崩溃闪退
MS包括ORD内部都采用了很多事件驱动的机制在工作,而这些事件驱动必须在有充足的CPU闲置时间的条件下才能被执行到。如果你的程序写得不合适,都是一些连续执行的功能,这样就不会给这些事件驱动留有被执行的时间,从而导致MS或ORD程序崩溃。单步执行时CPU有充足的时间从而不会导致崩溃。
宁小雨 said:ORD闪退报的错(返回值为 -1073740791 (0xc0000409)。)是什么意思
您可以到网上搜索一下这个错误号,似乎不是ORD特有的,而是许多软件都会共有的一个错误。
所以,根本原因还是在您的代码中。如果单步调试无法定位,那就只能另起炉灶先搞一个最简单的可运行的程序。然后将您现有的代码一点点往里面增加,增加一段就测试一段。这样就比较容易发现问题所在。我们平时写代码千万不要写上百行再去执行测试,而是每写几行就要执行测试,这样比较容易发现问题。
好的老师, 我试试
您可以尝试找到exception.log文件,搜索stack关键字,看看堆栈里面有没有你自己本身的函数,有的话在代码中该函数位置设个断点,重新启动调试一下。