Pokud při načítání spouštěcího souboru dojde k chybě, zbytek souboru zůstane ignorován a nebude načten.
K chybě obvykle dojde, pokud soubory uvedené ve spouštěcím souboru neexistují nebo se nenacházejí v umístěních určených cestami ke knihovnám aplikace. Proto můžete s funkcí load použít argument onfailure. Následující příklad ukazuje použití argumentu 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)
Pokud je volání funkce load úspěšné, vrátí se hodnota posledního výrazu v souboru (obvykle název poslední definované funkce v souboru nebo zprávy ohledně používání funkce). Jestliže volání selže, vrátí funkce hodnotu argumentu onfailure . V předchozím příkladu je hodnota vrácená funkcí čti předána funkci princ, což způsobí zobrazení této hodnoty na příkazovém řádku.
Pokud například dojde k chybě v průběhu načítání souboru mydocapp1.lsp aplikací, zobrazí funkce princ následující zprávu a aplikace bude pokračovat v načítání dvou zbývajících souborů:
Soubor MYDOCAPP1.LSP nebyl načten.
Používáte-li v souboru acad.lsp, acaddoc.lsp nebo v souboru MNL funkci command, měla by být volána pouze v rámci příkazu defun. Příkazy, které mají být provedeny bezprostředně po zahájení kreslicí relace, definujte pomocí funkce S::STARTUP.