wau2000022 发表于 2011-9-27 15:51:29

我编的arx程序,在CAD2000上运行可以,但在04及以上时,却均崩溃,说什么“内部错误:

我编的arx程序,在CAD2000上运行可以,但用VS2005转一下代码并生成arx后,在CAD2008上运行时,刚开始还可以,程序执行到快结束时,CAD却突然崩溃,说什么“内部错误:dbutil.cpp@701:eAtMaxReaders”,请高手解答原因,送上2个币意思一下,谢谢

highflybird 发表于 2011-9-27 15:51:30

本帖最后由 highflybird 于 2011-9-27 19:55 编辑

kForRead. An object can be opened for read by up to 256 readers as long as the object is not already open for write or for notify
...
If attempting to open AcDb::kForRead and the attribute is already opened for read the maximum of 256 times, then the open attempt will fail and this function will return Acad::eAtMaxReaders.
看来是代码转换的时候有问题。 什么意思呢?就是一个物体在没已经被打开写入或者回调,可以被以读的方式打开的 最大次数为256次。
不过楼主来错地方了。建议楼主查看arx编程的出错代码。
另外没有源代码和程序,就没有真相。

chmenf087 发表于 2011-9-27 23:55:37

照意思的话,将打开的数据库或者对象升级一下权限就可以了 AcDb::kForNotify

wau2000022 发表于 2011-9-28 00:30:05

谢谢回答,等我明天改改代码再看,如果解决了,即送上银子

wau2000022 发表于 2011-9-28 08:29:24

谢谢highflybird的提示,我改了代码,可以运行了,按chmenf087说的,修改权限为AcDb::kForNotify是不可以的,不过也谢谢您
页: [1]
查看完整版本: 我编的arx程序,在CAD2000上运行可以,但在04及以上时,却均崩溃,说什么“内部错误: