Es posible que la unidad de red asignada no se vuelva a conectar en Windows 10, versión 1809

En este artículo se proporciona una solución alternativa para el problema de que la unidad de red asignada puede no volver a conectarse en Windows 10, versión 1809.

Se aplica a:   Windows 10, versión 1809
Número KB original:   4471218

Síntomas

Experimenta los siguientes problemas en Windows 10, versión 1809:

  • En Windows Explorer, aparece una X roja en las unidades de red asignadas.
  • Las unidades de red asignadas se muestran como No disponibles al ejecutar el comando en un símbolo net use del sistema.
  • En el área de notificación, una notificación muestra el siguiente mensaje:

    No se pudieron volver a conectar todas las unidades de red.

Solución alternativa

Microsoft está trabajando en una resolución y estima que una solución estará disponible a finales de noviembre de 2018. Supervisar el tema de unidad asignada en el Windows 10 1809 Update History KB 4464619. Actualmente, puedes evitar este problema ejecutando scripts para volver a conectar automáticamente la unidad de red asignada al iniciar sesión en el dispositivo. Para ello, cree dos archivos de script y, a continuación, use una de las soluciones alternativas, según corresponda.

Crear un archivo de script denominado MapDrives.cmd

El archivo debe ejecutarse en un símbolo del sistema normal, pero no en un símbolo del sistema con privilegios elevados, ya que debe ejecutarse con el mismo privilegio que Windows Explorer:

PowerShell -Command "Set-ExecutionPolicy -Scope CurrentUser Unrestricted" >> "%TEMP%\StartupLog.txt" 2>&1
PowerShell -File "%SystemDrive%\Scripts\MapDrives.ps1" >> "%TEMP%\StartupLog.txt" 2>&1

Crear un archivo de script denominado MapDrives.ps1

El archivo debe ejecutarse en un símbolo del sistema normal, pero no en un símbolo del sistema con privilegios elevados, ya que debe ejecutarse con el mismo privilegio que Windows Explorer:

$i=3
while($True){
    $error.clear()
    $MappedDrives = Get-SmbMapping |where -property Status -Value Unavailable -EQ | select LocalPath,RemotePath
    foreach( $MappedDrive in $MappedDrives)
    {
        try {
            New-SmbMapping -LocalPath $MappedDrive.LocalPath -RemotePath $MappedDrive.RemotePath -Persistent $True
        } catch {
            Write-Host "There was an error mapping $MappedDrive.RemotePath to $MappedDrive.LocalPath"
        }
    }
    $i = $i - 1
    if($error.Count -eq 0 -Or $i -eq 0) {break}

    Start-Sleep -Seconds 30
}

Soluciones alternativas

Todas las soluciones alternativas deben ejecutarse en el contexto de seguridad de usuario estándar. La ejecución de scripts en un contexto de seguridad elevado impedirá que los controladores asignados estén disponibles en el contexto de usuario estándar.

Solución alternativa 1: Crear un elemento de inicio

Nota

Esta solución alternativa solo funciona para el dispositivo que tiene acceso a la red al iniciar sesión. Si el dispositivo no ha establecido una conexión de red para el momento del inicio de sesión, el script de inicio no volverá a conectar automáticamente las unidades de red.

  1. Copie el archivo de script (MapDrives.cmd) en la siguiente ubicación:
    %ProgramData% \ Microsoft Windows Start Menu Programs \ \ \ \ StartUp
  2. Copie el archivo de script (MapDrives.ps1) en la siguiente ubicación:
    %SystemDrive% \ Scripts\
  3. Se creará un archivo de registro (StartupLog.txt) en la carpeta \ %TEMP%.
  4. Cierre la sesión y vuelva a iniciar sesión en el dispositivo para abrir las unidades asignadas.

Solución alternativa 2: Crear una tarea programada

  1. Copie el archivo de script MapDrives.ps1 a la siguiente ubicación:
    %SystemDrive% \ Scripts\
  2. En programador de tareas, seleccione Acción > Crear tarea.
  3. En la ficha General del cuadro de diálogo Crear tarea, escriba un nombre (como Asignar unidades de red) y una descripción para la tarea.
  4. Seleccione Cambiar usuario o grupo, seleccione un usuario o grupo local (como Usuarios de LocalComputer) \ y, a continuación, seleccione Aceptar.
  5. En la pestaña Desencadenadores, seleccione Nuevo y, a continuación, seleccione Al iniciar sesión para el campo Comenzar la tarea.
  6. En la pestaña Acciones, seleccione Nuevo y, a continuación, seleccione Iniciar un programa para el campo Acción.
  7. Escriba Powershell.exe para el campo Programa/script.
  8. En el campo Agregar argumentos (opcional), escriba lo siguiente:
    -windowsstyle hidden -command . \MapDrives.ps1 >> %TEMP%StartupLog.txt \ 2>&1
  9. En el campo Inicio en (opcional), escriba la ubicación (%SystemDrive% \ Scripts \) del archivo de script.
  10. En la pestaña Condiciones, seleccione la opción Iniciar solo si la siguiente conexión de red está disponible, seleccione Cualquier conexión y, a continuación, seleccione Aceptar.
  11. Cierre la sesión y vuelva a iniciar sesión en el dispositivo para ejecutar la tarea programada.