Potete aiutarmi con le variabili d'ambiente, ho fatto un'infinita di prove, ma dai risutati non ci ho capito nulla. Mi sono trovato le stesse variabili d'ambiente con valori diverse a seconda della finestra dos da cui lanciavo il commando set o conset. Poi con conset ho un'infinità di opzioni, ho /t /u o /m
tra le varie prove per indicare cosa non mi torna
2 script
avvio il primo
1::
Run %comspec% /c "conset /u priorita=1"
sleep 1000
EnvGet, risultato, priorita
msgbox % risultato
return
2::
Run %comspec% /c "conset /u priorita=2"
sleep 1000
EnvGet, risultato, priorita
msgbox % risultato
return
3::
Run %comspec% /c "conset /u priorita="
sleep 1000
EnvGet, risultato, priorita
msgbox % risultato
return
4::
EnvGet, risultato, priorita
msgbox % risultato
return
esc::
exitapp
se premo un tasto da 1 a 4 esegue il contenuto del blocco
premo uno e mi da come risultato 1
se premo 4 da 1 come deve
premo 2 mi da sempre risultato 1 e non 2 come mi aspetterei.
Se a questo punto avvio il secondo script
EnvGet, risultato, priorita
msgbox % risultato
mi da il valore 2
In pratica mi sembra che legga la variabile ambiente all'avvio del programma, ma se questa cambia e lo script e in esecuzione continua a leggermi il valore che ha trovato all'avvio.
Non riesco a capire come funzionano.
in Autohotkey avrei la funzione di scrittura (EnvSet)della variabile d'ambiente, ma poi quando vado a leggerla da un altro script, risulta inesistente. All'interno dello script da cui la valorizzo invece con la funzione di lettura EnvGet, nessun problema.
Spero di essermi spiegato. La cosa è abbastanza incasinata.
Se potete darmi qualche consiglio
Ciao e grazie