2014-09-18 123 views
2

我正在使用Lisp程序將VBA宏加載到AutoCAD中。下面的Lisp語言程序被自動加載到AutoCAD中的啓動在AutoCAD啓動時運行Lisp函數

(defun C:LoadDVB() 
    (command "vbaload" "WindowsDoors.dvb") 
) 

不過我還是要輸入「LoadDVB」到AutoCAD中的命令行來獲得該插件工作,否則它給了我一個錯誤。我需要自動化這一步,以便在啓動時我可以使用VBA插件。

+0

我沒有使用AutoCAD的經驗,但是有什麼理由不能在初始化函數中調用相同的東西嗎?或者只是'(命令「vbaload」「WindowsDoors.dvb」)而不是'(defun ...)'? – 2014-09-18 23:00:24

回答

1

基本上你的自動加載器正在創建一個新的命令,而那個命令是加載你的VBA宏的東西。

在這種情況下,(defun C:LoadDVB() ...)定義了一個名爲「LoadDVB」的函數,您可以在命令行運行該函數。函數內部的代碼加載你的VBA宏...但是這個代碼只有在你在命令行中調用函數時纔會運行。

如果您希望自動加載器直接加載宏,請取出函數定義。所有你需要的是一行(command "vbaload" "WindowsDoors.dvb")