Não sei como alterar uma variável de ambiente na GUI do sistema e depois "aprendo" em um comando existente.
No entanto, não uso mais a GUI, pois posso definir variáveis de ambiente globais e locais na linha de comando. Nenhuma GUI precisou. Se você tem uma maneira de evitar sempre usar a GUI, talvez o seu problema se torne mais maleável?
A desvantagem é que existe um comando para definir a variável de ambiente global e outro para a janela de comando local. Eu não conheço uma maneira de obter os dois em um comando. Em vez disso, tenho um arquivo .BAT que usa meu nome e valor de variável como argumentos e define a variável de ambiente global e local ao mesmo tempo. A próxima janela de comando ou aplicativo GUI verá o novo valor. Eu não acho que rodar aplicativos GUI ou janelas de comando abertas outras irão, no entanto.
C:>SET_ENVVARS.BAT MYVAR MYVAL
SET %1=%2
CALL SETX %1 %2 /M
Você tem todas as limitações da linha de comando, como caracteres de escape e citações, mas na maioria das vezes isso funciona muito bem.
Meu arquivo .BAT tem alguns sinos e assobios, mas em seu núcleo, é isso.
Eu muito raramente tenho que usar a GUI.
Eu também ocasionalmente "despejo" minhas variáveis de ambiente com:
C:\>SET >MYVARS.TXT
Um pequeno smithing permitiria que você procurasse isso.
Não é uma solução rápida, mas eu invisto muito tempo na minha infraestrutura de arquivos .BAT e descubro que, a longo prazo, economizo mais tempo reformulando meu problema para corresponder à maneira como os arquivos .AT do Windows funcionam melhor. Além disso, às vezes eu recorro a C, por exemplo, para listar todos os elementos PATH, mas cada um em uma linha separada.