Wczytywanie funkcji


KBR

Rekomendowane odpowiedzi

Zmieniłem system na 7 64bit i mam problem z wczytywaniem lispów. To znaczy wczytują się, ale nie można ich dodać do listy startowej. Wyświetla się następujący komunikat:

"Access to C:\Program Files (x86)\ZWCAD 2010 Plk\AppAutoLoap

was danied"

ZWCAD wersja 14240 z 12.2009 nie mogę zauktualizować ponieważ późniejsze wersje zmieniły wstawianie bloków z atrybutami.

W autocadzie była taka funkcja chyba acadlisp, w której można było zapisać wczytywane lispy. Może w ZWCADZIE też można zrobić taki plik wsadowy?

Odnośnik do komentarza
Udostępnij na innych stronach

w katalogu ZWCAD jest plik zwcad.lsp

w nim można wpisywać pliki, które mają się wczytywać.

Plik ten można otworzyć w zwykłym notatniku. Wystarczy dodać linię w takim formacie

(vl-load-all "C:\\Katalog\\test.lsp"))

i zapisać plik

vl-load-all - funkcja wczytująca inny plik

ścieżka musi być w cudzysłowiach ""

katalogi muszą być oddzielane podwójnym ukośnikiem \\

Można też plik mający być wczytywany zapisać do katalogu widocznego przez ZWCADa (czyli katalog główny ZWCADa, oraz katalogi określone w opcjach), W tym przypadku, wystarczy wpisać nazwę pliku do wczytania, bez konieczności wpisywania pełnej ścieżki dostępu.

Odnośnik do komentarza
Udostępnij na innych stronach

Tak prosto to nie jest, ale można się posłużyć zwcadową funkcją menuload.

w piliku menu tutaj "Przykład.mnu" definiujemy jakąś nazwę

np

***MENUGROUP=TestMenu

Później w pliku lsp można wpisać takie coś

(if (null(menugroup "TestMenu"))
;(command "menuunload" "TestMenu")
(command "menuload" (strcat "Przykład.mnu"))
 )

Dzięki temu jeśli menu nie jest jeszcze wczytane, to wczytane zostanie, jeśli już jest, to wczytywane nie będzie

Odnośnik do komentarza
Udostępnij na innych stronach

Wielkie dzięki! :) To mi w zupełności wystarczy!

Ale oczywiście rodzi się jeszcze jedno pytanie :)

Czy za pomocą lispa można dodać dodatkową ścieżkę w konfiguracji ZWcada?

Tzn. Czy lisp'em mogę zrobić to co "ręcznie" w okienku Options, zakładka Files?

(Nie wiem czy jasno to opisałem)...

Odnośnik do komentarza
Udostępnij na innych stronach

Tak jasno. Niestety nie wiem jak można by to zrobić, ale ścieżkę można jeszcze zapisać np do rejestru systemowego. I tu się okazuje urok windowsowej kontroli konta użytkownika, która ma paskudny zwyczaj blokowania pracy na wybranych rejestrach. Poszukam jeszcze jak można ustawić ścieżki lispem, jak będę coś wiedział to napiszę.

Odnośnik do komentarza
Udostępnij na innych stronach

Czy za pomocą lispa można dodać dodatkową ścieżkę w konfiguracji ZWcada?

Tzn. Czy lisp'em mogę zrobić to co "ręcznie" w okienku Options, zakładka Files?

poleceniem: (getenv "ACAD")

uzyskasz wszystkie obecnie wprowadzone ścieżki, natomiast

poleceniem: (setenv "ACAD")

możesz wprowadzić własne ścieżki - jako dodatkowe!

Nie usuwaj przez przypadek tych, które tam są domyślnie ;)

I mała sugestia: Twoje ścieżki powinny być na pierwszych pozycjach, a dopiero potem te, które są tam domyślnie.

pozdrawiam.

Odnośnik do komentarza
Udostępnij na innych stronach

Znalazłem

Jest pewien problem z używaniem ścieżek wpisywanych w opcjach.

A może to nie jest problem, tylko taka moja sugestia. Zapis ścieżek przez setenv jest możliwy tylko w LISP (VBA ZRX). Moim zdaniem jeśli mówimy o dodawaniu plików do automatycznie wczytywanych, tworzeniu menu itp, jest to część instalacji naszej nakładki. W momencie instalacji nakładki, można zapisać te ścieżki bezpośrednio do rejestru. Już w pliku instalatora. Zdaję sobie sprawę że to też nie jest najlepsze rozwiązanie i ma ono swoje wady. np jeśli jest kilka różnych programów cad rodzi się wątpliwość który ma się dostosować. Są też plusy takiego rozwiązania, Możemy zrobić instalator, który będzie instalował nakładkę kompleksowo, bez konieczności wczytywania później jakichś innych plików.

A tak wracając do tematu gdzie ustawić ścieżki, to są one zapisane w rejestrze systemowym

W ścieżce (oczywiście może się różnić w zależności od wersji ZWCADa)

HKEY_CURRENT_USER\Software\ZWSoft\ZWCAD 2010 Plk\Profiles\Default\Config

Tam są klucze:

SRCHPATH,

HatchPat

Font

I inne, w zależności jakie ścieżki chcemy modyfikować.

P.S.

Nieuważna edycja rejestru systemowego grozi poważnym kalectwem systemu operacyjnego.

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.