為什么在CAD中按CTRL+A全選卻提示未知命令?
上周有網(wǎng)友在群里說他只是加載了一個(gè)插件,然后突然按CTRL+A無法全選了,而且提示:ai_selall是未知命令。
之前有網(wǎng)友問過為執(zhí)行其他命令,比如輸入REC后提示是未知命令,當(dāng)時(shí)我寫了文章,試了試,這個(gè)也不是哪些原因引起的,我嘗試查看AUTOCAD的幫助,卻發(fā)現(xiàn)幫助里也找不到這個(gè)命令。
每日一貼——為什么CAD快捷鍵和命令提示未知命令?
這個(gè)命令到底有什么特殊的呢?為什么這個(gè)命令會(huì)變成未知命令呢?
我一時(shí)半會(huì)也沒有找到答案,過了一會(huì)兒在群里有網(wǎng)友分享了一篇文章的截圖,提供了線索,基本了解了問題的原因,在這里跟大家分享一下,以后遇到類似的命令提示未知命令的時(shí)候知道是怎么回事。
全選(AI_SELALL)并不是標(biāo)準(zhǔn)的CAD命令
在CUI文件里有快捷鍵CTRL+A的定義,調(diào)用的命令是AI_SELALL,如下所示。

AI_SELALL雖然是AUTOCAD自帶的命令,但這個(gè)命令卻比較特殊,不是內(nèi)置的命令,而是在acad20xxdoc.lsp里定義的一個(gè)命令,如下圖所示。

而acad20xxdoc.lsp是在acad20xx.lsp里加載的,如下圖所示。

而acad20xx.lsp只要在CAD的支持文件搜索目錄下,就會(huì)自動(dòng)加載。
acad20xx.lsp文件在CAD安裝目錄下的SUPORT目錄下,而acad20xxdoc.lsp則在SUPPORT下一級(jí)的ZH-CN目錄,是跟語言版本相關(guān)的目錄,如下圖所示。

其實(shí)這個(gè)目錄下不僅有這個(gè)LSP程序,還有一些其他的LISP程序,CAD一些常規(guī)命令或擴(kuò)展工具命令都是在LSP程序里定義的,這些LISP程序如果因?yàn)槟承┰蚣虞d,里面定義的命令就無法使用了。
如果按CTRL+A提示ai_selall是未知命令,肯定是acad20xxdoc.lsp沒有正常加載,至于為什么沒有加載,就需要依次檢查acad20xxdoc.lsp、acad20xx.lsp以及支持文件搜索路徑,到底是哪個(gè)環(huán)節(jié)導(dǎo)致這個(gè)文件沒有加載。
但到底是原因?qū)е鲁霈F(xiàn)這個(gè)問題,我現(xiàn)在也說不清楚,估計(jì)還是跟加載了一些程序有關(guān)系,也有可能是CAD病毒修改了這些CAD自帶的程序文件。
在acad20xxdoc.lsp里不僅定義了全選的命令,還定義了一系列ai開頭的命令,如果提示ai開頭的命令是未知命令,首先檢查一下這個(gè)文件為什么沒有加載。這個(gè)LSP程序里還定義了一些其他命令,不過這些命令并不常用,而且還有一些是針對(duì)一些舊版已經(jīng)廢棄的命令添加了提示信息,如果感興趣的話,可以查看程序中的defun c:語句,看看到底定義了哪些命令。
其實(shí)CAD很多功能和細(xì)節(jié)我也不了解,也是在跟網(wǎng)友的不斷交流過程中才知道,希望大家多多交流,共同提高!
-
Origin(Pro):學(xué)習(xí)版的窗口限制【數(shù)據(jù)繪圖】 2020-08-07
-
如何卸載Aspen Plus并再重新安裝,這篇文章告訴你! 2020-05-29
-
CAD視口的邊框線看不到也選不中是怎么回事,怎么解決? 2020-06-04
-
教程 | Origin從DSC計(jì)算焓和比熱容 2020-08-31
-
CAD外部參照無法綁定怎么辦? 2020-06-03
-
CAD中如何將布局連帶視口中的內(nèi)容復(fù)制到另一張圖中? 2020-07-03
