Windows 10 Las variables de entorno del sistema eliminadas siguen regresando


2

He estado usando GNU Emacs en Windows durante muchos años y para que funcione, siempre tuve que definir varias variables de entorno. He tenido estos definidos como variables del sistema todo este tiempo:

EMACS_DIR` EMACSDATA` EMACSDOC` EMACSLOADPATH` EMACSLOCKDIRy EMACSPATH.

Recientemente actualicé mi Emacs del puerto "NTEmacs" de 24.3 al puerto oficial de GNU de 26.1 y descubrí que los valores que estaba usando para estos eran incorrectos. Además, la versión actual puede detectar automáticamente todos menos la variable EMACSPATH.

Así que entré en el panel de control de variables de entorno, cambié EMACSPATH para señalar la ubicación de la nueva instalación y eliminé el resto. Emacs ahora funciona muy bien.

Pero descubrí que después de un cierre de sesión / inicio de sesión, todas las variables eliminadas están de vuelta y con los valores anteriores. Más precisamente, no están en el panel de control, pero si abro un símbolo del sistema y escribo set, están allí y evitan que Emacs funcione. (Otras variables de entorno que he eliminado también vuelven, pero no interfieren con ninguna de mis aplicaciones, por lo que no me importa tanto).

Si modifico, agrego o elimino cualquier variable de entorno del sistema con el panel de control, el entorno se restablece para que coincida y Emacs funciona nuevamente hasta la próxima vez que cierre sesión o reinicie.

Claramente, estas variables de entorno se almacenan en caché en alguna parte, pero no tengo idea de dónde buscar para eliminarlas por completo.

Busqué en el registro con regedit y no pude encontrar ningún rastro de estas viejas variables. ¿Hay algún otro lugar donde debería estar buscando? Esto es claramente un error de Windows, pero no quiero tener que soportar esto por el tiempo que Microsoft necesite para solucionarlo.

Por supuesto, puedo obtener los valores que Emacs calcula y volver a crear las variables de entorno del sistema con estos valores, pero preferiría evitarlo a menos que no haya otra opción disponible.


En mi configuración Win10v1803 con Windows Subsystem para Linux Ubuntu 1804 instalado, sin emacs instalado para Windows, no veo esas variables del sistema. Sospecho que hubo una Tarea programada u otro script que se ejecuta al iniciar sesión (mire en el Programador de tareas y también en el Administrador de tareas-> Inicio y msconfig para ver qué se ejecuta al iniciar sesión y al iniciar). Puede haber otras formas de configurar automáticamente las variables. Ver superuser.com/questions/15596/… .
Christopher Hostage

¿Qué tiene realmente que ver la pregunta con Emacs?
Dibujó el

Hay dos conjuntos paralelos de variables de entorno: Sistema y Usuario. ¿Has revisado ambos?
harrymc

No es un problema de Emacs. Emacs es la razón por la que descubrí el problema. Ocurre con cualquier variable de entorno que haya establecido en algún momento en el pasado y luego elimine. En cuanto a sistema versus usuario, sí, he verificado ambos: solo los creé en el sistema y solo los eliminé del sistema.
David C.

Deben ser recreados por algún programa que haya instalado. Las variables de entorno no vuelven a aparecer por sí mismas.
harrymc
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.