无论如何调试不出和你一模一样的错误, 我的ARX无模式对话框就算不设keepFocus都可以很好地运行LISP.. 不过至少有几点大概可以再看看:
如果你用的代码是
AcApDocument * pDoc=acDocManager->curDocument();<BR> <FONT color=#ff0000>CString str= "(add10 x)\n";<BR></FONT> acDocManager->sendStringToExecute(pDoc,str);
那么红色句里的x必须置换成合适的数目字串(比如itoa/atoi之类把字串和数目互相转换的函数), 比如"(add10 20)\n", 不然LISP得到的参数不是一个数字, 而是x这个字符, 就会有匹配问题..
如果你用的是resbuf代码,
1. 检查包含你要用的函数的LISP文件有没有加载(这个其实是应该不管什么情况下都检查的)<BR>2. 你上个帖子里的命令串有两个参数(a, b), 但add10只接受一个参数. 请检查acutBuildList命令.
最好能把你现在用的设定和代码贴上来, 因为我不知道你现在是用什么样的LISP代码对应什么样的ARX代码, 很难确定到底哪里是问题. 大侠,我把代码程序发到你的邮箱了,谢谢指教!!!
页:
1
[2]