|
Wczytywanie funkcji |
| Autor |
Wiadomość |
KBR
Dołączył: 12 Maj 2008 Posty: 156
|
Wysłany: Czw Wrz 30, 10 19:06 Wczytywanie funkcji
|
|
|
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? |
|
|
|
 |
gruzin
sanitarnik
Pomógł: 5 razy Dołączył: 16 Lip 2009 Posty: 232 Skąd: Białystok
|
|
|
|
 |
gruzin
sanitarnik
Pomógł: 5 razy Dołączył: 16 Lip 2009 Posty: 232 Skąd: Białystok
|
|
|
|
 |
kruszynski
Pomógł: 17 razy Dołączył: 02 Sty 2009 Posty: 312
|
Wysłany: Wto Paź 05, 10 14:07
|
|
|
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
| Kod: | | (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. |
|
|
|
 |
2P
Dołączył: 18 Mar 2008 Posty: 92
|
Wysłany: Wto Paź 05, 10 14:21
|
|
|
A czy istnieje podobny sposób na wczytywanie własnych Toolbarów...
Jakby wczytywać własne pliki *.mnu...? |
_________________ =2P= |
|
|
|
 |
kruszynski
Pomógł: 17 razy Dołączył: 02 Sty 2009 Posty: 312
|
Wysłany: Wto Paź 05, 10 14:54
|
|
|
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ś
| Kod: | (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 |
|
|
|
 |
2P
Dołączył: 18 Mar 2008 Posty: 92
|
Wysłany: Wto Paź 05, 10 16:17
|
|
|
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)... |
_________________ =2P= |
|
|
|
 |
kruszynski
Pomógł: 17 razy Dołączył: 02 Sty 2009 Posty: 312
|
Wysłany: Sro Paź 06, 10 08:07
|
|
|
| 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ę. |
|
|
|
 |
Assgarth
programista
Pomógł: 2 razy Dołączył: 26 Sty 2009 Posty: 136 Skąd: Poznań
|
Wysłany: Sro Paź 06, 10 08:20
|
|
|
| 2P napisał/a: |
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. |
|
|
|
 |
kruszynski
Pomógł: 17 razy Dołączył: 02 Sty 2009 Posty: 312
|
Wysłany: Sro Paź 06, 10 11:42
|
|
|
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. |
|
|
|
 |
|
|