急需帮助
帖子被我删除了。 你好我无法证明任何事情,因为我没有2011年的测试,但根据您收到的错误消息,似乎是因为以下表达式:
(strcat "AutoCAD.AcCmColor."
(itoa (ATOI (GETVAR "ACADVER")))
)
该表达式在2010/2011年返回“AutoCAD.AcCmColor.18”,在2007/2008/2009年返回“AutoCAD.AcCmColor.17”,以此类推,它适用于以前的版本。
2011年可能需要AutoCAD版本号(2010年为18.0,2011年为18.1),而不是dwg版本号。
所以你可以试着用这个替换这个表达式:
(strcat "AutoCAD.AcCmColor."
(rtos (atof (getvar "ACADVER")) 2 1)
) 查看其他文件,看看调用了什么(defun ZF\u GET-ACADCOLOR()
从您发布的内容来看,它是唯一引用(GETVAR“ACADVER”))的东西
我没有发现第一个defun下面的代码有任何问题,但我可能错过了一些东西。 我添加了代码更改:
(strcat“AutoCAD.AcCmColor。”
(实时操作系统(atof(getvar“ACADVER”))2 1)
)
似乎什么都没有改变。我仍然得到错误:“不兼容的版本” 是AutoCAD给出了错误还是程序给出了错误。
看起来像是代码创建者创建的错误字符串
在文件中搜索错误的文本字符串,并查看其来源。
你知道如何在lisp编辑器中调试lisp文件吗? 错误消息已附加。
这看起来像是代码创建者编写的消息。
该消息是代码错误陷阱的一部分,而不是AutoCAD本身。
您需要查看代码,直到找到生成此消息的代码,然后回溯以找到调用此消息的代码行。
编写代码时,优秀的编写器会放入错误陷阱,这样代码不会使AutoCAD崩溃,并且编写器会使用警报功能通知用户问题。
如果你在下面键入cade,你会看到它就像你收到的消息一样。
(提醒“有问题”) 我搜索了所有警报,但在代码中没有找到任何警报。 可以发布所有代码吗? 还有更多代码。。。。
我也见过这种“拷贝保护”方法。。。。
它迫使用户购买autocad新版本的升级。
请张贴所有代码!!
页:
[1]
2