能否实现双击lisp程序自动加载?
如题,编一个lisp程序,一般用appoad命令加载或拖入窗口,不知能否直接双击文件加载?需要把*.lsp转换为什么格式?怎么转换?论坛搜索了一下,没找到相关的讨论 Gu_xl 发表于 2012-12-26 14:14gdslqs 发表于 2012-12-26 12:45
G版,你的意思就是不能实现了啊,原来是死路一条
G版,求教这个方法能用c#实现么 建议用cad插件来实现,比如用 飞诗CAD 来实现多个lsp,vlx等加载调用、管理等。 脚本加载的方法好 双击可以使用鼠标反应器实现,但是反应器函数程序也需要加载!所以你讨论双击鼠标加载某个程序文件,没有太大实际意义! G版,你的意思就是不能实现了啊,原来是死路一条 不知这样行不行,或许可以把lsp格式指定为cad打开,如果cad已打开就在当前cad打开,这样就当是加载了.
呵呵,是不是复杂了... gdslqs 发表于 2012-12-26 12:45 static/image/common/back.gif
G版,你的意思就是不能实现了啊,原来是死路一条
应该双击就加载还是挺方便的啊,我经常给同事写一点小的lisp,他们都问我能不能直接双击加载 自己写个bat写到注册表双击就可以
你的要求太偏,不可能实现 这个要求确实不同寻常 本帖最后由 Gu_xl 于 2012-12-26 14:18 编辑
gdslqs 发表于 2012-12-26 12:45 http://bbs.mjtd.com/static/image/common/back.gif
G版,你的意思就是不能实现了啊,原来是死路一条
将下列代码保存为后缀为*.vbs的文件,例如为: "加载程序.vbs"
Set fs = CreateObject("Scripting.FileSystemObject")
Set ws = CreateObject("WScript.Shell")
Path = fs.GetParentFolderName(WScript.ScriptFullName)
Set fs = Nothing : Set ws = Nothing
On Error Resume Next
Set objCAD = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
MsgBox "当前窗口中未发现AutoCAD,请开启AutoCAD后再试!"
Else
Set ThisDrawing = objCAD.activedocument
Path = replace (Path , "\" ,"\\")
ThisDrawing.SendCommand ("(load """ & Path & "\\test.lsp"")" & vbCr)
MsgBox "test.lsp已加载!"
End If
将保存的安装.vbs和你的程序 "test.lsp"放在同一目录下,双击文件 '加载程序.vbs"就可以实现自动加载了!
多谢G版,成功了 G版的方法和信工具箱的加载方式一样。