Le lecteur réseau mappé peut ne pas pouvoir se reconnecter dans Windows 10, version 1809

Cet article fournit une solution de contournement au problème lié à l’échec de la reconnexion du lecteur réseau mappé dans Windows 10, version 1809.

S’applique à : Windows 10, version 1809
Numéro de la base de connaissances d’origine : 4471218

Symptômes

Vous rencontrez les problèmes suivants dans Windows 10, version 1809 :

  • Dans Windows Explorer, un X rouge apparaît sur les lecteurs réseau mappés.
  • Les lecteurs réseau mappés sont affichés comme non disponibles lorsque vous exécutez la net use commande à une invite de commandes.
  • Dans la zone de notification, une notification affiche le message suivant :

    Impossible de reconnecter tous les lecteurs réseau.

Solution de contournement

Microsoft travaille sur une résolution et estime qu’une solution sera disponible d’ici la fin du mois de novembre 2018. Surveillez la rubrique de lecteur mappée dans la 4464619 de l’historique des mises à jour Windows 10 1809. Actuellement, vous pouvez contourner ce problème en exécutant des scripts pour reconnecter automatiquement le lecteur réseau mappé lorsque vous vous connectez à l’appareil. Pour ce faire, créez deux fichiers de script, puis utilisez l’une des solutions de contournement, le cas échéant.

Créer un fichier de script nommé MapDrives.cmd

Le fichier doit être exécuté à une invite de commandes standard, mais pas à une invite de commandes avec élévation de privilèges, car il doit être exécuté avec le même privilège 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

Créer un fichier de script nommé MapDrives.ps1

Le fichier doit être exécuté à une invite de commandes standard, mais pas à une invite de commandes avec élévation de privilèges, car il doit être exécuté avec le même privilège 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
}

Solutions de contournement

Toutes les solutions de contournement doivent être exécutées dans le contexte de sécurité utilisateur standard. L’exécution de scripts dans un contexte de sécurité avec élévation de privilèges empêche la disponibilité des lecteurs mappés dans le contexte utilisateur standard.

Solution de contournement 1 : Créer un élément de démarrage

Remarque

Cette solution de contournement fonctionne uniquement pour l’appareil qui dispose d’un accès réseau lors de l’ouverture de session. Si l’appareil n’a pas établi de connexion réseau au moment de l’ouverture de session, le script de démarrage ne reconnecte pas automatiquement les lecteurs réseau.

  1. Copiez le fichier de script (MapDrives.cmd) à l’emplacement suivant :
    %ProgramData%\Microsoft\Windows\Menu Démarrer\Programs\StartUp
  2. Copiez le fichier de script (MapDrives.ps1) à l’emplacement suivant :
    %SystemDrive%\Scripts\
  3. Un fichier journal (StartupLog.txt) est créé dans le dossier %TEMP%\.
  4. Déconnectez-vous, puis reconnectez-vous à l’appareil pour ouvrir les lecteurs mappés.

Solution de contournement 2 : Créer une tâche planifiée

Remarque

Une fenêtre PowerShell s’affiche lorsque la tâche planifiée s’exécute.

  1. Copiez le fichier de script MapDrives.ps1 à l’emplacement suivant :
    %SystemDrive%\Scripts\
  2. Dans Planificateur de tâches, sélectionnez Action>Créer une tâche.
  3. Sous l’onglet Général de la boîte de dialogue Créer une tâche , tapez un nom (par exemple , Mapper les lecteurs réseau) et une description de la tâche.
  4. Sélectionnez Modifier l’utilisateur ou le groupe, sélectionnez un utilisateur ou un groupe local (par exemple LocalComputer\Users), puis sélectionnez OK.
  5. Sous l’onglet Déclencheurs , sélectionnez Nouveau, puis à l’ouverture de session pour le champ Commencer la tâche .
  6. Sous l’onglet Actions , sélectionnez Nouveau, puis Sélectionnez Démarrer un programme pour le champ Action .
  7. Tapez Powershell.exe pour le champ Programme/script .
  8. Dans le champ Ajouter des arguments (facultatif), tapez ce qui suit :
    -windowstyle hidden -command .\MapDrives.ps1 >> %TEMP%\StartupLog.txt 2>&1
  9. Dans le champ Démarrer dans (facultatif), tapez l’emplacement (%SystemDrive%\Scripts\) du fichier de script.
  10. Sous l’onglet Conditions , sélectionnez l’option Démarrer uniquement si la connexion réseau suivante est disponible , sélectionnez N’importe quelle connexion, puis sélectionnez OK.
  11. Déconnectez-vous, puis reconnectez-vous à l’appareil pour exécuter la tâche planifiée.