陨落
发表于 2021-6-11 12:10:50
jacenhe 发表于 2021-6-11 04:52
思路很好,
不过 WScript 执行 Exec函数,然后读 stdout是阻塞状态,所以会卡住 AutoCAD 主窗体。此时如 ...
学习了!aardio作者居然亲自回复,荣幸之至!
陨落
发表于 2021-6-14 02:41:13
jacenhe 发表于 2021-6-11 04:52
思路很好,
不过 WScript 执行 Exec函数,然后读 stdout是阻塞状态,所以会卡住 AutoCAD 主窗体。此时如 ...
想请教一下,我测试的结果,com.eachRunning("IAcadApplication")为何总是只能返回两个不同的cad实例呢?
我是win7,64位系统,测试cad版本为2012和2014,这两个版本的cad即使开了3-4个,也只能返回2个不同的cad实例。如图:
陨落
发表于 2021-6-14 16:08:16
陨落 发表于 2021-6-14 02:41
想请教一下,我测试的结果,com.eachRunning("IAcadApplication")为何总是只能返回两个不同的cad实例呢? ...
用python试了,也只能返回两个,应该是ROT的问题。
jacenhe
发表于 2021-6-15 02:24:32
陨落 发表于 2021-6-14 16:08
用python试了,也只能返回两个,应该是ROT的问题。
查了一下,AutoCAD 不论开几个进程,只会在 ROT 里注册一次,退出那个注册的进程才会注册下一个,所以 ROT 对 AutoCAD 应该没啥用。 开多个进程里的话,可以做一个启动器,每次创建的对象记录下来。
陨落
发表于 2021-6-15 09:38:29
jacenhe 发表于 2021-6-15 02:24
查了一下,AutoCAD 不论开几个进程,只会在 ROT 里注册一次,退出那个注册的进程才会注册下一个,所以 RO ...
好的,应该是只有这个思路了~
叮咚
发表于 2021-7-15 22:21:17
麻烦问一下,程序打包进lsp ,用的是哪个工具?
liuyj
发表于 2022-2-10 11:16:33
能不能多给几个对话框与lisp交换数据的例子?比如对话框怎么接收lisp程序的返回值?lisp怎么得到对话框的输入值?
liuyj
发表于 2022-2-10 11:17:35
上面的例子,运行有错误提示。
liuyj
发表于 2022-2-10 11:20:07
jacenhe 发表于 2021-6-11 04:52
思路很好,
不过 WScript 执行 Exec函数,然后读 stdout是阻塞状态,所以会卡住 AutoCAD 主窗体。此时如 ...
后面的例子,运行后selpath变量的值应该是文件名,但是在cad里看了没有。
jacenhe
发表于 2022-2-12 12:08:54
@liuyj
这里说的是在 lisp 里调用 EXE ,如果你没传参数,直接双击运行 EXE,就会出现你那个错误。
你自己都说了是在 lisp 里交换数据了,
你当然先要弄明白那几句 lisp 啊,lisp 的范例应当很多不用我发给你吧?!
aardio 的关键代码只有这一句:
//自标准输入读取 LISP 传入的值
var hwnd = io.stdin.read("%d");
你只要弄懂这一句就行。