Wczytywanie aplikacji AutoLISP

Aby można było używać plików AutoLISP, w pierwszej kolejności należy je wczytać w programie.

Aplikacje AutoLISP są zapisywane w plikach tekstowych ASCII lub Unicode z rozszerzeniem .lsp. Pliki te zazwyczaj zaczynają się od nagłówka, który opisuje procedurę, sposób jej wykorzystania oraz instrukcje specjalne. Nagłówek taki może również zawierać komentarz o autorstwie programu i ewentualne formalne warunki jego wykorzystania. Komentarze są poprzedzone znakiem średnika (;). Takie pliki można przeglądać i edytować za pomocą edytora albo procesora tekstu, który zapisuje je w formacie tekstowym ASCII lub Unicode.

Ważne: Począwszy od produktów opartych na programie AutoCAD 2021, pliki źródłowe AutoLISP można zapisywać w formatach plików ASCII lub Unicode. Produkty oparte na programie AutoCAD 2020 i wcześniejsze obsługują tylko format plików ASCII.

Aplikacja AutoLISP musi zostać wczytana przed jej użyciem. Do wczytania aplikacji można zastosować polecenie WCZYTAJAPL lub funkcję load języka AutoLISP. Wczytanie aplikacji AutoLISP oznacza wczytanie do pamięci operacyjnej kodu AutoLISP z pliku LSP. Należy określić względną ścieżkę pomocniczą w parametrze Nazwa pliku, jeśli plik LSP nie znajduje się w ścieżce wyszukiwania plików pomocniczych.

Uwaga: Począwszy od produktów opartych na programie AutoCAD 2014, niestandardowe aplikacje muszą działać w trybie bezpiecznym, gdy zmienna systemowa SECURELOAD jest ustawiona na wartość 1 lub 2. W trybie bezpiecznym program może wczytywać i uruchamiać tylko te pliki, które zawierają kod z zaufanych lokalizacji określonych w ścieżce wyszukiwania plików pomocniczych; zaufane lokalizacje określa zmienna systemowa TRUSTEDPATHS.

Wczytywanie aplikacji za pomocą funkcji load wymaga wprowadzenia w wierszu polecenia programu AutoCAD odpowiedniego kodu AutoLISP. Jeśli powiodło się wywołanie funkcji load, w wierszu polecenia zostanie wyświetlona wartość ostatniego wyrażenia w pliku. Jest to zwykle nazwa ostatniej funkcji zdefiniowanej w pliku lub instrukcja korzystania z właśnie wczytanej funkcji. Jeśli podczas wykonywania funkcji load wystąpi błąd, zostanie wyświetlony odpowiedni komunikat o błędzie AutoLISP. Błędy funkcji load mogą być spowodowane nieprawidłowym kodem w pliku lub wprowadzeniem niepoprawnej nazwy pliku. Składnia funkcji load jest następująca:

(load filename [onfailure])

Wynika stąd, że funkcja load ma dwa argumenty: nazwa_pliku, który jest wymagany, oraz komunikat_o_błędzie, który jest opcjonalny. Podczas wczytywania pliku AutoLISP z wykorzystaniem wiersza polecenia zazwyczaj podaje się tylko argument nazwa_pliku.

Uwaga: Pliki aplikacji AutoLISP o podobnej nazwie są wczytywane na podstawie ich znacznika czasu Zmodyfikowany. Plik LSP, FAS lub VLX wczytywany jest z bieżącym czasem w tym znaczniku, jeśli nie zostanie podana pełna nazwa pliku (łącznie z rozszerzeniem). Pliki VLX obsługiwane są tylko w systemie Windows.

Poniższy przykład pokazuje wczytanie pliku AutoLISP o nazwie newfile.lsp.

Polecenie: (load "nowyplik")

Rozszerzenie .lsp nie jest wymagane. Format taki jest poprawny w przypadku dowolnego pliku .lsp w bieżącej ścieżce dostępu do biblioteki.

Aby wczytać plik AutoLISP, który nie znajduje się w ścieżce dostępu do biblioteki, należy jako argument nazwa_pliku podać nazwę pliku wraz z pełną ścieżką dostępu.

Windows

Polecenie: (load "d:/pliki/plikilisp/nowyplik")

Mac OS i sieć WWW

Polecenie: (load "/pliki/plikilisp/nowyplik")

Uwaga: Przy podawaniu ścieżki dostępu jako separatora należy używać znaku kreski ułamkowej (/) lub dwóch znaków odwróconej kreski ułamkowej (\\), ponieważ pojedyncza odwrócona kreska ułamkowa ma w języku AutoLISP specjalne znaczenie.