明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 747|回复: 8

[提问] 【已解决】如何实现在CAD开软件时运行1次指定命令?

[复制链接]
发表于 2021-8-14 16:37:38 | 显示全部楼层 |阅读模式
本帖最后由 AndyWang 于 2021-8-16 10:44 编辑

如题!


试过在acad20xxdoc.lsp中加命令,可以实现开始时运行指令,但再创建新标签文档时,还会再运行一次命令,这起了反效果!


请教各位有何办法解决此问题?拜谢!!


"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2021-8-14 19:51:09 | 显示全部楼层
(if
        (not(vl-bb-ref 'test))
        (progn
                (vl-bb-set 'test 1)
                (princ "\n**第一次加载载**")
                (princ)
        )
        (progn
                (princ "\n**不是第一次加载**")
                (princ)
        )
)

评分

参与人数 1明经币 +1 收起 理由
AndyWang + 1 很给力!

查看全部评分

回复 支持 2 反对 0

使用道具 举报

发表于 2021-8-14 17:58:43 | 显示全部楼层
弄个变量,执行过了就做个标记。
发表于 2021-8-14 18:19:07 | 显示全部楼层
程序运行的时候在指定的文件夹生成一个文件或者在注册表生成一个值
然后程序的开始加个判断有此文件或者注册表就不执行
这样有个问题就是如果CAD关闭 下次打开的时候这个文件或注册表还是存在的 也不会加载程序
如果加个反应器在关闭CAD时删除此文件或着注册表 那么同时打开两个CAD 关闭其中一个 另一个CAD再打开新文档还是会加载程序  或者中途致命错误文件或注册表不能删除也会有问题
所以感觉只能知道程序的源头才好处理吧
水平有限想不出什么好办法
发表于 2021-8-14 19:35:26 来自手机 | 显示全部楼层
试试在一个文档中(vl-bb-set 'a "1"), 然后另一个文档中, (vl-bb-ref 'a) ,应该能读到1.
 楼主| 发表于 2021-8-16 10:03:55 | 显示全部楼层
baitang36 发表于 2021-8-14 17:58
弄个变量,执行过了就做个标记。

感谢回复!
 楼主| 发表于 2021-8-16 10:05:56 | 显示全部楼层
aihuyujian 发表于 2021-8-14 18:19
程序运行的时候在指定的文件夹生成一个文件或者在注册表生成一个值
然后程序的开始加个判断有此文件或者注 ...

感谢,有些极端情况不作考虑,brainstorm大神的代码可行,直接加入启动lsp就可以。
 楼主| 发表于 2021-8-16 10:08:02 | 显示全部楼层
brainstorm 发表于 2021-8-14 19:51
(if
        (not(vl-bb-ref 'test))
        (progn

很好用,非常感谢!
发表于 2021-8-16 11:31:31 | 显示全部楼层
AndyWang 发表于 2021-8-16 10:05
感谢,有些极端情况不作考虑,brainstorm大神的代码可行,直接加入启动lsp就可以。

试了一下 果然好用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-16 16:39 , Processed in 1.812810 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表