No se puede resolver% windir% / No se puede modificar% ruta% o% ruta% se restablece en el arranque

45

Consulte las Actualizaciones 3 y 4 a continuación para ver cómo ha evolucionado el problema.


Mi computadora (Windows 7 x64, Lenovo Thinkpad T530) tiene un problema al resolver% windir%. Después del arranque, todo funciona bien. En algún momento un tiempo después, la computadora de repente no puede resolver% windir%.

Ventana de consola

La comprobación de la ventana de variables de entorno muestra que está definida.

Entorno Varibales

La comprobación del registro también muestra que también está definido. De hecho, eliminé la clave y la volví a ingresar en vano.

Registro

Después de reiniciar, todo funciona bien por un tiempo. ¿Alguien tiene alguna idea sobre algo más que pueda verificar?


Actualización 1: Después de pensarlo un poco, desinstalé el controlador / programa Konica Minolta Pagebox que se instaló aproximadamente cuando comenzó a ocurrir este problema (vea los comentarios a continuación). El problema parece tardar entre 4 y 24 horas (nunca lo he cronometrado) para manifestarse, así que lo actualizaré nuevamente después de eso.

Actualización 2: el problema sigue ocurriendo. Regresé del almuerzo y no se puede encontrar% windir%. Hice una prueba después de un reinicio esta mañana y puse la computadora en suspensión, luego la desperté. % windir% todavía se definió después de despertar.

Actualización 3: según Daniel en los comentarios, ejecuté setantes y después del error y comparé los resultados. Lo primero que noté es que en un arranque nuevo, mi % path% tiene más de 2000 caracteres de longitud . Lo reduje a ~ 375 caracteres y lo verifiqué en una nueva ventana de cmd. Reinicié, verifiqué la ruta de nuevo y volví a tener más de 2000 caracteres (coincidía con lo que vi originalmente). Lo trunqué nuevamente y reinicié una vez más y sucedió lo mismo. Eliminé la variable de ruta y creé una nueva; Lo mismo sucedió. En este punto, todo lo que puedo concluir es que no puedo cambiar permanentemente mi ruta O que la ruta se está restableciendo por algún proceso en el arranque. ¿Alguna idea?

Actualización 4: edité mi ruta a través del método de registro sugerido a continuación. Revisé mi camino hoy después de correr durante un tiempo y ha crecido a partir de lo que ingresé en el registro; ahora tiene algunas entradas nuevas y muchos duplicados. Las únicas entradas nuevas son de SQL Server 2012. Fui a cambiar esto en el registro y noté que el registro NO coincide con la salida de echo %path%. La comprobación de las variables de entorno desde la pestaña Propiedades avanzadas muestra una tercera versión de mi ruta.

Registry Path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;

Command Line path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;
C:\Program Files(x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;

Environment Variables path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;

Parece que la ruta de la línea de comando = ruta del registro + ruta de las variables de entorno . Intenté establecer la ruta de registro y la ruta de las variables de entorno a la misma cosa y reiniciar. Después de reiniciar, mi ruta ahora se duplica, básicamente dos copias consecutivas de la ruta de registro anterior.

Una vez más, ¿alguna idea?

Actualización 5: Después de hablar con el Gerente de TI, dice que está luchando contra un problema similar en otra computadora. Ambas computadoras tienen SSD (parece ser el único factor común). Esto puede o no ser pertinente.

Zack
fuente
intente usar setpara asignar valor windirmanualmente y repita con echonuevamente; vea si esto le dará salida o no. Si lo hace, entonces algo está estropeando sus variables env; si no, algo no está bien con su shell y / o comando echo.
mnmnc
Establecerlo funciona, pero no estoy realmente seguro de que eso pruebe algo, ya que puedo ejecutar "set SystemRoot = abcd", para una variable de sesión similar de corta duración
Zack
Si puedo preguntar, ¿cómo notó esto en primer lugar? Es decir, ¿qué te indicó que había un problema? (En caso de que sea relevante ...)
Shinrai
Hace un par de semanas, se instaló un controlador de escáner de red en mi computadora. Poco después, tuve problemas con los programas de Windows que no se encuentran. Lo rastreé hasta que mi camino era demasiado largo y lo arreglé. Esto puede o no estar relacionado. Las cosas han sido extravagantes desde entonces. Específicamente, el ícono del altavoz de Windows en la esquina inferior genera un error periódicamente ("No se encontró un controlador de salida", pero el sonido aún funciona). Fui a verificar la ruta nuevamente, y recibí un error al intentar acceder a la configuración avanzada del sistema ("no se puede encontrar% windir% \ system32 \ ..."). Lo rastreé hasta que Windir no resolvió.
Zack
1
Posible duplicado de PATH
jpaugh

Respuestas:

26

Tuve el mismo problema y encontré esta pregunta primero. Sin embargo, la causa / solución real aún no se menciona en esta pregunta, pero sí se menciona aquí: la RUTA de Windows y las variables de entorno están dañadas

Resumen de la solución: asegúrese de que su ruta tenga <2048 caracteres. Compruebe tanto las variables de usuario como las variables del sistema.

Pieter-Jan Busschaert
fuente
4

Con la GUI, configure su contenido variable % windir% en % SystemRoot% .

En cuanto a su% path%, puede resolver esto con el Editor del Registro:

  • Inicie Regedit.exe
  • Ir HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
  • En el panel derecho, haga doble clic en el valor Path (REG_EXPAND_SZ)
  • Cambia el valor como quieras y reinicia

ingrese la descripción de la imagen aquí

usuario184745
fuente
Parece que lo solucionó. Le daré un día completo en el trabajo el lunes para asegurarme, y suponiendo que todo salga bien, marcaré esto como la respuesta correcta después de eso. Gracias.
Zack
1
@Zack Tengo exactamente el mismo problema en un Lenovo T430 y también un compañero de trabajo. La respuesta anterior no funcionó. ¿Se resolvió finalmente el problema?
Ford prefecto
@inquisitiveIdiot: nunca lo resolví por completo. Desinstalé algunas cosas que estaban en la ruta y seguí podando la ruta manualmente en la línea de comando. Finalmente, el problema dejó de suceder.
Zack
@Zack Acabo de publicar lo que terminó funcionando como respuesta en caso de que tenga un problema nuevamente
prefecto de
Tener el mismo problema en un T430 también.
Lightyear Buzz
2

Tuve el mismo problema en mi Lenovo TS530. Comenzó a ocurrir después de instalar nuevos programas que hicieron que mi ruta fuera mucho más larga que antes y que los instaladores agregaron las nuevas cosas al comienzo de la definición de la ruta . Edité la ruta en regedt moviendo% SystemRoot% al comienzo de la definición de ruta.

path = %SystemRoot%\system32;%SystemRoot%;%SystemRoot....

Además, edité windir variable ambiental de

windir= C:/Windows

a

windir=C:\Windows

Eso parece haber arreglado el problema. (Es posible que haya cometido el error con la barra invertida antes al intentar solucionar el problema. O bien, el instalador lo ha cambiado).

imppu
fuente
Windows es bastante indulgente con el uso en /lugar de \ .
jpaugh
1

Tuve el mismo problema. Se resolvió cuando eliminé la variable de entorno PATH (después de hacer una copia de seguridad de su contenido) en el siguiente cuadro de diálogo.

C:\Windows\System32\SystemPropertiesAdvanced.exe

Reconstruí la variable PATH más tarde una por una. Moví parte del contenido de la RUTA que no encajaba en las variables del Sistema a la RUTA de las variables de Usuario.

Vijay Vepakomma
fuente
1

Como ya mencionó @ Pieter-Jan Busschaert, lo más probable es que se deba a una PATHvariable de entorno corrupta o demasiado larga .

La forma más fácil de solucionar esto es descargando el Editor de entorno rápido . Le muestra lo que está mal con su PATHconfiguración y le permite solucionarlo de inmediato.

Dunken
fuente
Siempre pude arreglar el camino. El problema era que la ruta seguía expandiéndose espontáneamente más allá de 2048 caracteres sin que yo hubiera hecho nada (por ejemplo, instalar o desinstalar un programa).
Zack
1

He encontrado (consistentemente) que esto también ocurrirá si SQL Server 2012 o versiones posteriores están instaladas en la máquina con Windows 7 (no estoy seguro si el problema también ocurre en Win8.xo Win10), pero la solución que he encontrado es también cree la variable de entorno windir en el contexto del usuario actual para establecerla en% SystemRoot%. El único momento en que veríamos esto es cuando RDP'ing (sesión remota) en la (s) estación (es) de trabajo. Si iniciamos sesión en la consola, no encontraríamos esto en absoluto. No sé si los componentes de SQL 2012 (o posterior) se instalaron en el suyo justo antes de que esto suceda o no, pero puede probar esta resolución.

Mike Fanning
fuente
0

Nuestro servicio de asistencia me dio esta respuesta:

  1. Abra la Configuración de control de cuenta de usuario haciendo clic en el botón Inicio y luego en Panel de control. En el cuadro de búsqueda, escriba uac y luego haga clic en Cambiar la configuración de Control de cuentas de usuario.
  2. Haga lo siguiente: • Para desactivar UAC, mueva el control deslizante a la posición Nunca notificar y luego haga clic en Aceptar. Si se le solicita una contraseña o confirmación de administrador, escriba la contraseña o proporcione la confirmación. Deberá reiniciar su computadora para que UAC se apague.

Funciona dado dos cosas diferentes:

1.) Este problema en realidad no existe porque este programa requiere que% windir funcione correctamente. En su lugar, ejecute C: \ Windows \ System32 \ UserAccountControlSettings en el símbolo del sistema.

2.) Prefiere no tener las advertencias de seguridad de Windows.

prefecto vado
fuente
UAC ya estaba desactivado en mi caso, pero si esto funciona para usted o para cualquier otra persona, eso es genial
Zack
0

Tuve el mismo problema después de actualizar a un SSD en mi Lenovo X230. El software que utilicé para la migración (Acronis TrueImage) había agregado un valor de ruta, que debe haberme excedido el límite. Lo resolví de la siguiente manera:

Regedit abierto

Ir HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Modifique el valor de la ruta (consulte la respuesta del usuario 184745 anterior).

Cortar el valor actual y pegarlo en el Bloc de notas.

Editó varios valores duplicados, así como rutas que parecían de poco beneficio. Reduje la longitud del camino de 2,283 caracteres a 1,517.

Pegó la nueva cadena de ruta en la clave de ruta.

(Guarde el contenido de mi Bloc de notas por si acaso).

Reiniciado Todo está bien.

Robert
fuente
-1

Tuve los mismos problemas que el anterior. % windir%. iconos que no se muestran para algunos elementos. Cualquier aplicación que usara windir ... Pasó por todas las correcciones, incluido el arranque en frío, el acortamiento de la ruta, etc.
Finalmente recreé mi perfil de Windows ... el problema desapareció.

PaulG
fuente
44
Bienvenido a Super User PaulG. Si bien ha intentado responder a la pregunta de OP pero carece de datos de respaldo y puede llevar a la eliminación. Consulte cómo y por qué se eliminan algunas respuestas y cómo escribir una buena respuesta
juego de palabras el