您可能还需要按F5刷新注册表以查看更改。此外,请确保您具有修改注册表的权限。
Irneb代码的快速修改:
(vl-load-com)
(defun MoveStartup2ACADDOC ( / f key val )
(if
(or
(and
(setq f (findfile "acaddoc.lsp"))
(setq f (open f "a"))
)
(and
(setq f (getenv "ACAD"))
(setq f (substr f 1 (vl-string-search ";" f)))
(or (wcmatch f "*\\")
(setq f (strcat f "\\"))
)
(setq f (strcat f "acaddoc.lsp"))
(setq f (open f "w"))
)
)
(progn
(foreach val
(vl-registry-descendents
(setq key
(strcat "HKEY_CURRENT_USER\\"
(vlax-product-key)
"\\Profiles\\"
(getvar 'CPROFILE)
"\\Dialogs\\Appload\\Startup"
)
)
"*"
)
(cond
( (eq val "NumStartup")
(vl-registry-write key val "0")
)
( (wcmatch val "*Startup")
(write-line (strcat "(load " (vl-prin1-to-string (vl-registry-read key val)) " nil)") f)
(vl-registry-delete key val)
)
)
)
(close f)
)
)
(princ)
)
编辑:快速测试表明此方法无效。
路径确实已从注册表中删除,但在AutoCAD重新启动时会被重写-返回到绘图板(请原谅这个双关语) 查看桌面时按F5?如果是这样的话,它就不起作用了。我会试着重新启动电脑,看看能不能用。
不,当查看注册表时(即,如果您将regedit保持打开状态),请参阅上面的“我的编辑”。 重启成功!
我想在不去每个人的工作站的情况下运行它,所以重启是我的选择。
谢谢大家!! 您还应该考虑acad。带有自动加载的mnl相当于将许多文件加载到acaddoc。lsp
k 我会远离那个。也许你指的是习俗。mnl?虽然它可能会起作用,但这很像你改变acad。崔(x)。。。可能会被更新覆盖。
其实我更喜欢自己做崔和它的伴奏MNL。更“健壮”:如果菜单已加载,则您知道您的MNL也已加载(即使它不在支持路径上)。
至于“重写”创业套件。只有在关闭ACad之前打开startup suite,才会执行此操作。所以运行我的代码(或者说李的mod),立即关闭ACad。无论如何,在RegEdit中按F5刷新(或者简单地来回更改文件夹),它不需要这样做就可以工作。
这是我的一个测试:从通过启动套件加载的一些LSP开始。
你可以看到它们在注册表中。
然后用我的defun和当前的acaddoc打开了VLIDE。lsp。在控制台中直接运行我的代码。注意阿卡多克。lsp发生更改,VLIDE会通知您:
https://www.cadtutor.net/forum/uploads/monthly_2011_08/capture_08012011_170737.jpg.4e8d8247665551c0ab2b885787577f79.jpg
之后,将这3个文件附加到acaddoc。lsp。这里是李的mod进行修复的地方。注意,我的只有一个反斜杠:
关闭ACad。打开RegEdit(如果已打开,请按F5):
重新打开ACad(确保上一个会话已关闭-检查任务管理器中正在运行的进程)。打开启动套件。。。他们走了:
尽管李的国防部修正了双反斜杠问题。 Acad,mnl工作得很好(加上一些Custom.mnl)。通常我会通过添加新的lisp覆盖此文件。为了安全起见,文件保存在服务器上(不用担心用autocad“清理”它)。
我认为最好是“按需”加载文件,而不是通过adacdoc加载数百个文件。lsp
克鲁格
你试过自动装弹机吗?
如果我继续这样下去,我还不如有一个销售职位。。。只是说说而已。英雄联盟 呵呵,当然。我每天都在查看李的页面,寻找新的酷东西。
我尽量不使用“load”,因为这可能会减慢打开autocad/new dwg的速度(尤其是当我们有一些(princ“…”的例程时)最后。
克鲁格 @Kruuger-我通常注释掉所有加载消息(如果不是我的例程),但将它们保留在源代码中以供归属。
@Irneb&Lee-干得好的家伙;看到你解决问题的过程是很有教育意义的。
干杯
页:
1
[2]