明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4733|回复: 11

为什么注册表里已经加入了启动组,启动CAD后,启动组内容是空的?

[复制链接]
发表于 2011-10-21 11:33 | 显示全部楼层 |阅读模式
为什么注册表里已经加入了启动组,启动CAD后,用Appload命令,查看启动组,内容是空的?如下图
注册表如下:
HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R17.0\ACAD-5001:804\Profiles\<<未命名配置>>\Dialogs\Appload\Startup
“1Startup”="C:\Program Files\MYCAD\My.vlx"

启动CAD,用Appload 命令,点击启动组【内容】,里面为什么是空的呢?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2011-10-21 18:40 | 显示全部楼层
CAD有几个配置选项时就会出现没写对的情况。比如你有<<未命名配置>>和<<我的配置>>两项,你用的是<<我的配置>>却写注册表到<<未命名配置>>,那你必须切换正确的配置之后才会出现在启动组里。
回复 支持 1 反对 0

使用道具 举报

发表于 2019-1-8 09:26 | 显示全部楼层
最近我也遇到这个问题,运行下面的程序,启动组也是空的
  1. ;|= 将程序加入启动组
  2. @== (AddStartup AppName)
  3. #== return:
  4. par: AppName: [str] 完整路径
  5. sample: (AddStartup "e:\\12.lsp")
  6. ver: [1.0] by xshrimp @mjtd
  7.   [1.1] by lostbalance
  8. ====================|;
  9. (defun AddStartup (AppName / $akey $skey loadctrlnum NumStartup acadpath loader)
  10.   (setq acadpath (vl-filename-directory (findfile "acad.exe"))) ;;获取AutoCAD的安装路径
  11.   (if (= (type appname) 'STR)
  12.     (progn
  13.       (setq
  14.         $skey (strcat "HKEY_CURRENT_USER\" (vlax-product-key) "\\Profiles\" (getvar "CPROFILE") "\\Dialogs\\Appload\\Startup")
  15.         $akey (strcat "HKEY_CURRENT_USER\" (vlax-product-key) "\\Applications\\AcadAppload" )
  16.       )
  17.       ;;加入启动组
  18.       (setq NumStartup (vl-registry-read $skey "NumStartup"))
  19.       (if NumStartup
  20.         (progn
  21.           (vl-registry-write $skey "NumStartup" (itoa (+ 1 (atoi NumStartup))))
  22.           (vl-registry-write $skey (strcat (itoa (+ 1 (atoi NumStartup))) "Startup") AppName )
  23.         )
  24.         (progn
  25.           (vl-registry-write $skey "NumStartup" "1")
  26.           (vl-registry-write $skey "1Startup" AppName )
  27.         )
  28.       )
  29.       ;;读取LoadCtrls的值,将这个值与2作“或”运算,再写回。这样可以保证AutoCAD启动时会加载Appload.arx模块。
  30.       ;;不设置LOADCTRLS的话,加入启动组的程序无法正确加载,需要手动启动启动组确认后才可以
  31.       (setq loadctrlnum (vl-registry-read $akey "LOADCTRLS"))
  32.       (if loadctrlnum
  33.         (vl-registry-write $akey "LOADCTRLS" (Boole 7 loadctrlnum 2))
  34.         (vl-registry-write $akey "LOADCTRLS" 15)
  35.       )
  36.       (setq loader (vl-registry-read $akey "LOADER"))
  37.       (if (not loader)
  38.         (progn
  39.           (vl-registry-write $akey "DESCRIPTION" "AcadAppload Command Module") ;;此条可以不加,注释性内容,不影响正常启动
  40.           (vl-registry-write $akey "LOADER" (strcat acadpath "\\Appload.arx")) ;;全新安装或格式化后的AutoCAD默认不加载appload.arx,需添加
  41.         )
  42.       )
  43.     ;  T ;;这个T什么用?
  44.     )
  45.     nil
  46.   )
  47. )
发表于 2020-7-11 10:35 | 显示全部楼层
szx025 发表于 2019-1-8 09:26
最近我也遇到这个问题,运行下面的程序,启动组也是空的

斜杠打少了
(strcat "HKEY_CURRENT_USER\\"
                         (vlax-product-key)
                         "\\\\Profiles\\"
                         (getvar "CPROFILE")
                         "\\\\Dialogs\\\\Appload\\\\Startup"
                 )
发表于 2011-10-21 13:44 | 显示全部楼层
启动组数量那项也要修改才行。还有就是写注册表时CAD必须关闭
 楼主| 发表于 2011-10-21 15:51 | 显示全部楼层
启动组数量也写了。"NumStartup"="1"。
关了CAD,重新写了一遍还是不行。
CAD支持路径也都加了,
CAD试了2004、2006、2007,还都不行。
这是怎么回事呢?
发表于 2011-10-21 17:21 | 显示全部楼层
目前科学家暂时无法解释这种现象,只能用RP问题来解释了.
发表于 2012-1-13 00:53 | 显示全部楼层
我也遇到了这个问题,郁闷了 ,折腾了一晚上也是不知其解。注册表里确实写上了,一启动cad就清空了。
如果单独写reg文件则又可以 简直是开国际玩笑,cad怎么知道我注册表是怎么写上去的?
发表于 2012-2-1 12:27 | 显示全部楼层
如果是程序写入的话,在WIN7系统中由于安全问题,可能被系统拒绝了,XP应该无此问题
发表于 2012-3-4 22:22 | 显示全部楼层
帮你顶起,同问
发表于 2015-3-24 18:47 | 显示全部楼层
这个问题现在有解决办法了吗?顶一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-19 20:16 , Processed in 1.068456 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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