CADXChange
購買

教學/AutoCAD 疑難排解

AutoCAD 按「開啟」沒反應,檔案對話方塊跳不出來? — 修正 FILEDIA = 0

更新於 October 7, 2026

AutoCAD 2024 按下 Open 之後沒有跳出檔案對話方塊,命令列顯示 Enter name of drawing to open

按「開啟」,或按 Ctrl+O,想打開一個 DWG 檔,結果什麼都沒跳出來。功能區沒變,也沒有選檔案的視窗,看起來就像 AutoCAD 沒反應。

其實 AutoCAD 有反應,只是它沒開對話方塊,而是在命令列問你要開哪個檔案的路徑。原因是系統變數 FILEDIA 被設成了 0。不用重新安裝,改一個值就好。這篇也會教你在不動設定的情況下只叫出一次對話方塊,並說明 FILEDIA 為什麼會自己變回 0。截圖用的是 AutoCAD 2024,不過 FILEDIA 這個行為在很多版本都一樣。

1. 會發生什麼事

FILEDIA 是 0 的時候,Open 按鈕、Ctrl+O、OPEN 指令都會照常啟動,只是不再跳出開啟檔案的對話方塊,而是在命令列出現像下圖這樣的提示,等你自己輸入檔案路徑。

受影響的不只有「開啟」。所有要讀寫檔案的指令,檔案對話方塊都會被關掉。Autodesk 文件舉的例子是 SAVEAS:它不會跳出「另存新檔」,而是改成在命令列問你。所以如果「另存新檔」、附加外部參考之類的對話方塊也一起消失,八成就是 FILEDIA。

AutoCAD 命令列顯示提示 Enter name of drawing to open

2. 看一下 FILEDIA 現在是多少

先按 Esc 取消命令列上等待輸入的提示。這個提示還在的時候,AutoCAD 會把你接下來打的東西都當成檔案路徑,連關閉視窗也不會理你。

接著在命令列輸入 FILEDIA,按 Enter。角括號裡就是目前的值。0 代表檔案對話方塊被關掉了,正常應該是 1。

輸入 FILEDIA 之後的命令列,顯示 Enter new value for FILEDIA,角括號裡的目前值是 0

3. 把 FILEDIA 改回 1

在同一個提示輸入 1,按 Enter。如果提示已經不見了,再輸入一次 FILEDIA 就行。

FILEDIA 存在 Windows 登錄裡,不是存在圖面裡,所以改一次就對所有圖面有效,關掉 AutoCAD 再開也還是 1。在空白圖面裡改就可以,開著哪一張都沒差。

命令列在 FILEDIA 提示後輸入了 1,準備按 Enter 確定

4. 確認對話方塊回來了

再按一次「開啟」,熟悉的開啟對話方塊就會出現。「另存新檔」和其他檔案對話方塊也會一起恢復。

FILEDIA 設為 1 之後重新出現的 AutoCAD 開啟對話方塊,資料夾裡有兩個 DWG 檔

5. 不能改 FILEDIA,只想臨時用一次對話方塊?在提示輸入 ~

有時 FILEDIA 是刻意被設成 0 的,例如正在跑的指令碼,或公司自己的例行程式。這種情況可以先不動它。依 Autodesk 文件,FILEDIA 為 0 時,在提示處輸入波浪號(~),還是可以叫出檔案對話方塊。

看到 Enter name of drawing to open 時,輸入 ~ 再按 Enter,對話方塊只會為這一次指令跳出來,FILEDIA 仍然是 0。你也可以直接在提示處輸入圖檔的完整路徑。

命令列在 Enter name of drawing to open 提示後輸入了波浪號

6. 為什麼它老是變回 0

Autodesk 說明的常見原因是:會開檔或存檔的 LISP 程式、功能表巨集、批次指令碼,為了不讓對話方塊打斷流程,會先把 FILEDIA 設成 0,跑完再改回 1。要是中途被取消或出錯,又沒有錯誤處理把值還原,FILEDIA 就停在 0,下次按「開啟」就中招。

AutoCAD 啟動時會載入 LISP 的外掛或啟動程式,也可能留下 0。如果一開 AutoCAD 它就已經是 0,可以查一下啟動時載入了什麼:APPLOAD 裡的「啟動套件」,以及支援路徑上的 acad.lsp、acaddoc.lsp。要找出是誰,就先把 FILEDIA 改回 1,一次只跑一個工具或載入一個外掛,每次都看一下 FILEDIA 的值。

如果是你自己寫的程式,在把 FILEDIA 設成 0 之前,先用 GETVAR 記下原本的值,正常結束和錯誤處理裡都要還原。

7. 被改掉時馬上收到通知:SYSVARMONITOR

AutoCAD 有「系統變數監視器」,可以替你盯著指定的變數,一旦被改成和你設定的偏好值不同,不管是你自己、指令碼還是外掛改的,都會跳出警告。輸入 SYSVARMONITOR 開啟設定視窗,清單裡沒有 FILEDIA 的話就加進去,偏好值設為 1。

之後只要有程式把檔案對話方塊關掉,馬上就會收到通知,不必等到「開啟」沒反應才發現。

8. 如果命令列也沒有任何提示

如果 FILEDIA 已經是 1,卻還是什麼都沒出現,可能是對話方塊其實開了,只是你看不到,例如被藏在主視窗後面,或跑到已經拔掉的螢幕上。可以先試試 Alt+Tab。這和 FILEDIA 是不同的問題,分辨方法很簡單:FILEDIA 是 0 的時候,命令列一定會留下提示。

整件事的解法就是輸入 FILEDIA,再輸入 1。如果有東西老是把它改掉又找不出是誰,就用 SYSVARMONITOR 盯著它;只想臨時叫出一次對話方塊的時候,輸入 ~ 就好。

開始之前 — 常見問題

AutoCAD 按「開啟」沒反應是怎麼回事?
通常是系統變數 FILEDIA 被設成 0。FILEDIA 是 0 的時候,AutoCAD 不會跳出檔案對話方塊,Open 指令改成在命令列問你圖檔的路徑。輸入 FILEDIA,把值改成 1,對話方塊就回來了。
AutoCAD 的「另存新檔」對話方塊沒有跳出來怎麼辦?
原因一樣是 FILEDIA 為 0,SAVEAS 會改成在命令列問你檔名。把 FILEDIA 改成 1 就好;只想臨時用一次,在檔名提示處輸入 ~。
FILEDIA 是做什麼用的?
FILEDIA 控制 OPEN、SAVEAS 這類讀寫檔案的指令要不要跳出檔案對話方塊。1 是跳出對話方塊(執行指令碼時仍然是一般提示),0 是改在命令列詢問。預設值是 1,設定存在登錄裡,不在圖面裡。
不改 FILEDIA,能不能只叫出一次檔案對話方塊?
可以。在命令列的檔名提示處輸入波浪號(~)。依 AutoCAD 文件,FILEDIA 為 0 時還是可以這樣要求顯示檔案對話方塊。
FILEDIA 為什麼老是自己變成 0?
LISP 程式、功能表巨集和指令碼常為了不被對話方塊打斷而把它設成 0,如果中途被取消或出錯、沒有還原,就會一直停在 0。可以檢查啟動時載入了什麼,再用 SYSVARMONITOR 在它被改掉時收到警告。
FILEDIA 的設定會存在圖面裡嗎?
不會。它存在 Windows 登錄裡,所以改一次對所有圖面有效,下次開啟 AutoCAD 也還是一樣。