Vytisknout stránku | Zavřít okno

SETENV - vynulování proměnné prostředí

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: CAD programování
Popis fóra: Otázky programování - nadstavby a utility pro CAD a GIS aplikace Autodesk (VBA, AutoLISP, ARX/C++, .Net, JavaScript, Python, MEL...)
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=29292
Datum vytištění: 02.kvě.2026 v 04:27


Téma: SETENV - vynulování proměnné prostředí
Odeslal: Sedláček
Předmět: SETENV - vynulování proměnné prostředí
Datum odeslání: 23.srp.2019 v 09:53
V A2019 LT využívám pro práci s textem v makru SETENV pro uložení textu do proměnné prostředí.
např. SETENV users1 "TEXT"
 
Chtěl bych mít možnost tuto proměnnou "vynulovat", ale to se mi nedaří.
Pokud zadám např.:
SETENV users1 ""
zůstane v proměnné users1 původní hodnota.
 
Zatím to řeším tak, že zadávám mezeru (" ") - ve výsledném textu se to celkem ztratí, ale chtěl bych to mít "čisté".
 
Má někdo řešení?
 
PS.
Přes REGEDIT dokáži proměnnou v REGISTRY vynulovat - ale potřeboval bych to vyřešit přímo z prostředí Autocadu



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 23.srp.2019 v 10:03
Zkuste prosím postupy dle:
https://www.cadforum.cz/cadforum/qaID.asp?tip=4197 - https://www.cadforum.cz/cadforum/qaID.asp?tip=4197
https://www.cadforum.cz/cadforum/jak-zadat-nic-prazdny-znak-do-textu-tip11673 - https://www.cadforum.cz/cadforum/jak-zadat-nic-prazdny-znak-do-textu-tip11673
 
ale nevím zda se podaří z menu makra - v nejhorším skriptem.


-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: Sedláček
Datum odeslání: 26.srp.2019 v 13:39
Děkuji za radu.
Takovémuto řešení jsem se chtěl vyhnout - chtěl jsem "vynulovat" proměnnou prostředí, ne do ní zadat "neviditelné" znaky.
Nakonec jak píši výše - zadávám mezeru (" "), což je obdoba Vašeho řešení.
Asi to lépe nepůjde, tak jsem to alespoň vylepšil tak, že při dalším zpracování makra dávám podmínku:
 
$(IF, $(eq, $(getenv,users1)," "),,$(getenv,users1))
 
takže se ta mezera ve výsledném textu neobjeví.
 
 
 
 


Odeslal: Vladimír Michl
Datum odeslání: 26.srp.2019 v 15:10
Ano, to je asi jediné řešení. Jinak než takto nebo přes Registry to vymazat nejde.

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)



Vytisknout stránku | Zavřít okno