起動ファイルのロード中に AutoLISP のエラーが発生すると、ファイルの残りの部分が無視されてロードされません。
一般的には、起動ファイルに指定したファイルが存在しないか、プログラムのライブラリ パスで指定されたフォルダ内に存在しない場合にエラーが発生します。このため、load 関数で onfailure 引数を使用した方がよいでしょう。次に、 onfailure 引数を指定した例を示します。
(princ (load "mydocapp1" "\nMYDOCAPP1.LSP file not loaded.")) (princ (load "build" "\nBUILD.LSP file not loaded.")) (princ (load "counter" "\nCOUNTER.LSP file not loaded.")) (princ)
load 関数の呼び出しが正常に終了すると、ファイル内の最後の式の値が返されます。通常、最後に定義した関数の名前か、その関数の使用法に関するメッセージが返されます。呼び出しが失敗すると、 onfailure 引数の値が返されます。上記の例では、load 関数が返す値が princ 関数に渡され、その値がコマンド プロンプト領域に表示されます。
たとえば、mydocapp1.lsp ファイルのロード中にエラーが発生した場合、princ 関数で次のメッセージが表示され、引き続き残りの 2 つのファイルがロードされます。
MYDOCAPP1.LSP ファイルがロードできません.
acad.lsp、acaddoc.lsp、または MNL ファイルで command 関数を使用する場合、この関数は defun 文の内部からのみ呼び出せます。作図セッションの開始時に直ちに実行することが必要なコマンドを定義するには、S::STARTUP 関数を使用してください。