Windows: La ruta de acceso al destino es demasiado larga

 




En el ámbito empresarial es muy común encontrarse con este inconveniente de Windows que viene arrastrando por años, imagina que dedicando buen tiempo a organizar tus archivos dentro de carpetas y de pronto te aparece el siguiente mensaje:

Ventana La ruta de acceso al destino es demasiado larga.
Ventana La ruta de acceso al destino es demasiado larga.

Afortunadamente, Windows permite eliminar esta restricción de forma definitiva. Pero para entender la solución, vale la pena mirar un poco hacia atrás y comprender por qué existe este límite en primer lugar.

El origen del límite de 260 caracteres en las rutas.

La famosa restricción de los 260 caracteres proviene de una constante técnica dentro de la API interna de Windows conocida como MAX_PATH.

Este estándar se introdujo en la era de Windows 95 y Win32. En aquel entonces, los ingenieros de Microsoft necesitaban definir una estructura de memoria fija para gestionar los nombres de los archivos. La regla de cálculo para MAX_PATH era la siguiente:

  • 1 carácter para la letra de la unidad (ejemplo: C)
  • 2 caracteres para los delimitadores (:\)
  • 256 caracteres para el resto de la ruta y el nombre del archivo
  • 1 carácter para el terminador nulo (\0) que indica el final de la cadena de texto en código C.

Sumando todo esto, obtenemos exactamente 260 caracteres. Para la tecnología de mediados de los 90, cuando los discos duros medían unos pocos cientos de megabytes, tener carpetas con más de 250 caracteres parecía un escenario sumamente lejano.


¿Por qué Microsoft no lo activa por defecto?.

Con la llegada de Windows 10 (versión 1607), Microsoft finalmente añadió la capacidad nativa de manejar rutas de hasta 32,767 caracteres (conocidas como Win32 Long Paths) suficiente para la mayoria de los escenarios. Sin embargo, al día de hoy en Windows 11, esta opción sigue estando desactivada por defecto.

¿La razón? Compatibilidad con software antiguo.

A lo largo de los años, miles de programas, controladores y aplicaciones empresariales antiguas se programaron asumiendo estrictamente que MAX_PATH jamás superaría los 260 caracteres. Si Microsoft activara las rutas largas de manera global por defecto:

  • Riesgo de fallos (Bloqueos): Aplicaciones antiguas que no asignan suficiente memoria para leer una ruta de 500 caracteres podrían sufrir desbordamientos de búfer (buffer overflow) y colapsar.
  • Problemas de compatibilidad: Programas de terceros o utilidades integradas en sistemas empresariales podrían dejar de funcionar o corromper datos al intentar leer archivos profundos.

Por ello, Microsoft decidió dejar la opción como un ajuste opcional (opt-in), permitiendo que sean los administradores de sistemas o usuarios avanzados quienes la habiliten conscientemente.


Cómo habilitar las rutas largas en tu equipo

Existen dos metodos muy conocidos para habilitar los 32,767 caracteres para las rutas en windows, la más común que aplicará para nosotros la mayoria, todas las versiones de windows home, pro etc, es modificando el registro directamente:

Modificando el registro de windows. Cambiando el valor de la clave LongPathsEnabled a 1 dentro de la siguiente ruta: HKLM\SYSTEM\CurrentControlSet\Control\FileSystem

Para facilitar modificar este parámetro hice un ejecutable para cambiar el valor solo ejecutando como administrador la secuencia de comandos, puedes descargarlo aquí:

Aunque si lo prefieres, ejecutando el siguiente comando con powershell como administrador se logra el mismo objetivo:

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force



Modificando la politica de grupo. Esta opción procede si tu windows es la versión Pro o Enterprise, también útil si manejas Active Directory y lo haces desde el servidor para que aplique a todos los equipos:

Navegando a Configuración del equipo > Plantillas administrativas > Sistema > Sistema de archivos y habilitando la opción "Habilitar rutas largas de Win32".

🛑 Pero alto.

Habilitar el soporte de rutas largas es un ajuste rápido y seguro para entornos modernos que elimina una de las limitaciones más frustrantes de la gestión de archivos en Windows. Sin embargo como mencioné aun muchas aplicaciones no soportan esa configuración, entre ellos el muy básico explorador de archivos de windows.

Por lo que si quieres disfrutar de crear rutas de más de 260 carácteres tendrás que usar un programa alterno como Total Commander (https://www.ghisler.com/download.htm) o 7zip (https://www.7-zip.org/).


Publicar un comentario

Artículo Anterior Artículo Siguiente