乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 76|回复: 14

[编程交流] 启动Autoc时打开帮助

[复制链接]

4

主题

11

帖子

7

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 09:50:45 | 显示全部楼层 |阅读模式
大家好,
 
每次我启动Autocad时,都会在IE中打开联机Autocad帮助窗口。这很烦人。
 
我确保在选项/系统/“使用Autodesk网站的联机帮助(如果可用)”下取消选中该框
 
我正在使用一些自定义工具栏和Lisp。我认为在设置自定义项之前,它不会以这种方式运行,因此我认为这些LISP中的某些内容导致了这种行为。
 
我的问题是,除了一次禁用一个Lisp程序以查看行为是否发生变化外,什么是追踪原因的最佳方法?这将非常耗时。
 
还是我走错了路?
回复

使用道具 举报

4

主题

22

帖子

18

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 09:56:26 | 显示全部楼层
不,我认为你在正确的轨道上,我们在升级到AC MEP 2011时经历了同样的事情。如果我没记错的话,那就是Autocad移植工具出了问题。我们升级了5台计算机,2台出现了相同的问题(不同的机器),办公室中所有机器的设置/安装都是相同的。我的修复我试着重新安装它确实修复了一个。另一台计算机必须先卸载,然后重新安装。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:01:22 | 显示全部楼层
在任何办公室,在卸载/重新安装之前尝试修复都应该是S.O.P。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:06:24 | 显示全部楼层
是否有可能将/b启动开关添加到AutoCAD快捷方式中,并且帮助文件本身被专门引用?
回复

使用道具 举报

4

主题

11

帖子

7

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:10:51 | 显示全部楼层
 
我刚刚检查了快捷方式属性,但除了“C:\Program Files\Autodesk\AutoCAD 2011\acad.exe”之外,没有其他开关
回复

使用道具 举报

4

主题

78

帖子

74

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:14:34 | 显示全部楼层
当我在启动时运行的某个例程中出错时,AutoCAD将打开帮助。然后我花了大约半个小时的时间试图找出它是哪一个(如果我一次只修改一个程序,通常会更快)。我修复了编程中的错误,AutoCAD停止打开帮助。
回复

使用道具 举报

4

主题

11

帖子

7

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:20:07 | 显示全部楼层
我把我的问题缩小到我的层lisp的一部分,我从这里或可能在web上找到的示例中拼凑而成。很抱歉,我不记得原始源代码属于谁。
 
无论如何,此代码中由星号包围的部分导致Autocad Help弹出。有人能看到是什么导致了这个“错误”吗?
 
  1. ;; First get the active layer
  2. (setq activelayer (getvar "CLAYER"))
  3. ;; Make layer 0 active
  4. (setvar "CLAYER" "0")
  5. (defun c:layupd (/ oldcmd laylist)
  6. (setq oldcmd (getvar "CMDECHO")) (setvar "CMDECHO" 0)
  7. (setq laylist '(("BALLOON" "15" "CONTINUOUS")
  8. ("BORDER" "33" "CONTINUOUS")
  9. ("BOTTOM" "31" "CONTINUOUS")
  10. ("CENTER" "35" "CENTER" "")
  11. ("CONSTRUCTION" "5" "PHANTOM")
  12. ("DIMENSION" "40" "CONTINUOUS")
  13. ("FRONT" "83" "CONTINUOUS")
  14. ("GHOST" "12" "CONTINUOUS")
  15. ("HATCH" "123" "CONTINUOUS")
  16. ("HIDDEN" "252" "HIDDEN2")
  17. ("PART" "7" "CONTINUOUS")
  18. ("REV" "1" "CONTINUOUS")
  19. ("SECTION" "5" "PHANTOM2")
  20. ("SIDE" "30" "CONTINUOUS")
  21. ("NOTES" "40" "CONTINUOUS")
  22. ("TOP" "6" "CONTINUOUS")
  23. ))
  24. ;; Load line types
  25. (command ".linetype""load""hidden" (strcat"acad.lin")"""")
  26. (command ".linetype""load""hidden2" (strcat"acad.lin")"""")
  27. (command ".linetype""load""hiddenx2" (strcat"acad.lin")"""")
  28. (command ".linetype""load""center" (strcat"acad.lin")"""")
  29. (command ".linetype""load""center2" (strcat"acad.lin")"""")
  30. (command ".linetype""load""centerx2" (strcat"acad.lin")"""")
  31. (command ".linetype""load""phantom" (strcat"acad.lin")"""")
  32. (command ".linetype""load""phantom2" (strcat"acad.lin")"""")
  33. (command ".linetype""load""phantomx2" (strcat"acad.lin")"""")
  34. ;;****************problem section************************
  35. (foreach lay laylist
  36. (if (not (tblsearch "LAYER" (car lay)))
  37. (command "-layer" "m" (car lay) "C" (cadr lay) (car lay) "")
  38. (command "-layer" "C" (cadr lay) (car lay) ""))
  39. (if (tblsearch "LTYPE" (caddr lay))
  40. (command "-layer" "L" (caddr lay) (car lay) "")
  41. (princ (strcat "\n" (caddr lay) " Linetype could not be found!"))
  42. )
  43. )
  44. ;;*************end problem section************************
  45. (setvar "CMDECHO" oldcmd)
  46. (princ))
  47. (c:layupd)
  48. ;;Restore the original active layer
  49. (setvar "CLAYER" activelayer)
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 10:23:04 | 显示全部楼层
在模板图形(DWT)中设置图层、线型等不是更简单吗?
 
作为一种选择,您也可以使用Excel文件来管理图层列表,例如:
 
我的公司有多个学科,每个学科都有自己的做事方式。因此,我们开发了“图纸构建”软件,其中一个步骤是让用户从保存该学科图层方案的下拉列表(excel文件)中选择文件名。。。随后输入到激活图形中。
 
当需要更改时,我们会请求新图层或报告打字错误等,并在excel文件中进行更改。
 
希望这有帮助!
回复

使用道具 举报

4

主题

11

帖子

7

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:28:29 | 显示全部楼层
伦德曼,
 
我感谢你的意见。我不是一个大Lisp程序或VBA的家伙;如果我发现一个例程具有我喜欢的函数,我会将其添加到我的lisp集合中。
 
尽管如此,我仍然希望通过lisp加载我的层。如果我想处理不包含特定图层的图形,它们仍然会被加载。
回复

使用道具 举报

4

主题

78

帖子

74

银币

初来乍到

Rank: 1

铜币
20
发表于 2022-7-6 10:30:20 | 显示全部楼层
我建议修改你的层命令,使它更有效一点。我无法判断代码中的错误是什么,因为它似乎已正确关闭。
以下是我们使用的内容:
  1. ;;2010.11.04  Layer Setup by Christopher T. Cowgill                                    ;;
  2.    ;;Truecolor function by Fred Tomke (www.theswamp.org)                                ;;
  3.    ;;Coding assistance provided by Opie, RobertB, and irneb (www.augi.com), ronjonp    ;;
  4.    ;;Original code simplification by alanjt (www.augi.com, www.theswamp.org)            ;;
  5.    ;;****************************************************************************************************************************************
  6.    (defun truecolor (uColor / oColor)
  7.      (setq oColor (vla-getinterfaceobject acadObject "AutoCAD.AcCmColor.18"))
  8.      (cond
  9.    ((= (type uColor) 'INT)
  10.     (vla-put-ColorMethod oColor acColorMethodByACI)
  11.     (vla-put-ColorIndex oColor uColor)
  12.    )
  13.    ((not (listp uColor)) nil)
  14.    ((= (length uColor) 3)
  15.     (vla-put-ColorMethod oColor acColorMethodByRGB)
  16.     (vla-SetRGB oColor (car uColor) (cadr uColor) (last uColor))
  17.    )
  18.    ((= (length uColor) 2)
  19.     (vla-SetColorBookColor oColor (car uColor) (cadr uColor))
  20.    )
  21.      ) ; cond
  22.      ocolor
  23.    ) ; truecolor
  24.    ;;****************************************************************************************************************************************
  25. (defun alllayerset (lst / listlayer name match)
  26.      (command "linetype" "_load" "*" "acad" "")
  27.      (command "-layer" "SET" "0" "")
  28.      (setq listlayer (vla-get-layers acaddocument))
  29.      (foreach y lst
  30.    (if (wcmatch (car y) "*`**")
  31.      ()
  32.      (if (tblsearch "LAYER" (car y))
  33.        ()
  34.        (vla-add listlayer (car y))
  35.      ) ;_ end of if
  36.    ) ;_ end of if
  37.      ) ;_ end of foreach
  38.      (vlax-for    x listlayer
  39.    (or (vl-position (setq name (strcase (vla-get-name x))) '("0" "DEFPOINTS"))
  40.        (if    (setq match (vl-remove-if-not
  41.                  (function (lambda (x) (wcmatch name (strcase (car x)))))
  42.                  lst
  43.                ) ;_ end of vl-remove-if-not
  44.        ) ;_ end of setq
  45.          (mapcar (function
  46.            (lambda    (p v)
  47.              (if v
  48.                (vl-catch-all-apply
  49.                  (function vlax-put-property)
  50.                  (list x p v)
  51.                ) ;_ end of vl-catch-all-apply
  52.              ) ;_ end of if
  53.            ) ;_ end of lambda
  54.              ) ;_ end of function
  55.              '(Freeze Color LineType Plottable Description Truecolor)
  56.              (cdar match)
  57.          ) ;_ end of mapcar
  58.        ) ;_ end of if
  59.    ) ;_ end of or
  60.      ) ;_ end of vlax-for
  61.      (setq name nil)
  62.      (vla-regen acadDocument acAllViewports)
  63.    ) ;_ end of defun

我只需要向程序提供一个层及其属性的列表,它就可以处理其余的所有内容。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-7 00:32 , Processed in 0.937113 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表