Comment réparer "Le client WinRM Shell ne peut pas traiter la requête. L'un des paramètres requis pour la fonction WSManCreateShell est nul ou nul".
Définition
This error occurs when a client computer attempts to initiate a Windows Remote Management (WinRM) or PowerShell remoting session, but the local environment lacks the necessary variables, or the underlying configuration required to establish the shell structure is invalid.
The primary cause is typically a missing, corrupted, or blank environment variable on the local machine—most commonly the USERPROFILE ou... TEMP/TMP Lorsque l'infrastructure WinRM initialise le WSManCreateShell fonction, il vérifie ces variables d'environnement pour établir le chemin de session. Si elles sont nulles, de longueur zéro ou pointant vers un emplacement inaccessible, l'initialisation échoue immédiatement et lance cette erreur spécifique. Cela peut également se produire si la configuration du client WinRM elle-même est mal configurée ou s'il y a un conflit dans la politique d'exécution de PowerShell.
Réparation étape par étape
Suivez ces étapes pour résoudre le problème.
Étape 1: vérifier et corriger les variables environnementales
Depuis un manquant ou incorrect USERPROFILE la variable est le déclencheur le plus courant, vous devez vous assurer qu'il pointe vers votre dossier d'utilisateur correct.
- Appuyez dessus.
Win + Rsur votre clavier pour ouvrir le Run boîte de dialogue. - Quel type ?
sysdm.cplet appuyez. Enter Pour ouvrir. System Properties. - Naviguez vers le... Advanced Je vous en prie.
- Cliquez sur le Environment Variables... le bouton en bas.
- Dans le... User variables section (en haut de la liste), cherchez
USERPROFILE.- Si elle n'existe pas, cliquez New... Mettez le nom de la variable à
USERPROFILEet la valeur de la variable àC:\Users\YourUsername(RemplacerYourUsernameavec votre nom de compte Windows réel). - Si elle existe, cliquez Edit... et assurez-vous que le chemin est exact.
C:\Users\YourUsernamesans espaces ni guillemets.
- Si elle n'existe pas, cliquez New... Mettez le nom de la variable à
- Vérifie le...
TEMPJe ne sais pas.TMPVeillez à ce qu'ils pointent vers un dossier valide (généralement%USERPROFILE%\AppData\Local\Temp) et de l'Union européenne. - Cliquez. OK sur toutes les fenêtres pour enregistrer les modifications.
- Redémarrez votre ordinateur pour que le système puisse appliquer les nouvelles variables environnementales globalement.
Étape 2: redémarrer le service WinRM
La mise à jour du service de gestion à distance de Windows effacera les configurations bloquées ou les erreurs d'état temporaires.
- Appuie sur le... Windows Key, type
cmd, cliquez avec le bouton droit. Command Prompt, et sélectionnez Run as administrator. - Tapez la commande suivante pour arrêter le service et appuyez Enter:
net stop winrm - Tapez la commande suivante pour redémarrer le service et appuyez Enter:
net start winrm
Étape 3: réparer la configuration WinRM
Réinitialiser les paramètres WinRM à leur état sécurisé par défaut corrige les corruptions de paramètres cachés.
- Ouvrez. Command Prompt en tant qu'administrateur (comme indiqué à l'étape 2).
- Type the following command to automatically configure and repair WinRM parameters, then press Enter:
winrm quickconfig - Si vous êtes invité à apporter des modifications ou à activer le service, tapez
y(Oui) et appuyez Enter.
Étape 4: Exécuter PowerShell avec le contournement des profils par défaut
Parfois, les profils PowerShell personnalisés locaux passent des arguments nuls aux fonctions de connexion. Vous pouvez tester et contourner ce comportement.
- Cliquez avec le bouton droit. Start le bouton et sélectionnez Terminal (Admin) ou... PowerShell (Admin).
- Si vous exécutez un script ou une commande qui déclenche l'erreur, exécutez PowerShell tout en ignorant explicitement les profils locaux en exécutant:
powershell.exe -NoProfile - Essayez d'exécuter votre commande à distance dans cette instance propre de PowerShell pour voir si le problème est résolu.
Il y a peut-être des erreurs.. Learn Microsoft