Tengo un problema con la configuración de variables de entorno con C#.C# establecer la variable de entorno
Necesito modificar algunas variables de entorno en algunas circunstancias. Por ejemplo, necesito modificar la variable NDSRC.
que utilizo:
Environment.SetEnvironmentVariable("MY_VARIABLE", "value", EnvironmentVariableTarget.Machine);
Esto funciona bien.
A continuación, ejecuto un script que utiliza la variable. Y ahora hay un problema, porque el script no ve la variable.
Ejemplo: variables Establecer ruta (añadir un directorio al final) usando
string path = Environment.GetEnvironmentVariable("Path", EnvironmentVariableTarget.Machine) + ";c:\\";
Environment.SetEnvironmentVariable("Path", path, EnvironmentVariableTarget.Machine);
Abra las ventanas de línea de comandos (Inicio> Run-> cmd.exe).
En comando cmd tipo de línea
El sistema no puede encontrar cmd.exe: 'cmd' no se reconoce como un comando interno o externo, programa o archivo por lotes.
Si verifica la configuración de Windows -> Variables del entorno, la Ruta se establece correctamente en el nuevo valor. Si marca en el símbolo del sistema abierto, también está configurado.
Hola. Ese no es el problema. Yo uso Environment.SetEnvironmentVariable ("MY_VARIABLE", "value", EnvironmentVariableTarget.Process); para establecer la variable de entorno para mi proceso, y funciona. El problema es que fuera de mi proceso, incluso si veo una variable modificada, cualquier otro proceso parece no verlo. En el ejemplo, simplemente agrego algo a la variable Path. Después de eso, el sistema no ve la ruta variable en absoluto. –