Active Directory – Résoudre l’erreur 0x80040201 de schmmgmt.dll
I. Présentation
Dans ce tutoriel orienté troubleshooting, nous allons apprendre à corriger l'erreur avec le code 0x80040201 qui s'affiche lorsque l'on essaie d'enregistrer la DLL "schmmgmt.dll" sur un serveur Windows Server.
Le message d'erreur complet est le suivant : "Le module "schmmgmt.dll" a été chargé, mais l'appel à DllRegisterServer a échoué avec le code d'erreur 0x80040201". En image cela donne :
Une erreur survenue suite à l'exécution de la commande suivante :
regsvr32 schmmgmt.dll
La commande ci-dessus doit être utilisée pour enregistrée la DLL permettant de bénéficier du composant "Schéma Active Directory" dans la console MMC. Pour rappel, cette console permet de visualiser des informations sur les attributs et classes d'un annuaire Active Directory.
II. Résoudre l'erreur schmmgmt.dll
Cette erreur se produit lorsque l'on exécute cette commande dans une fenêtre "Exécuter" sur un contrôleur de domaine ou un serveur Windows Server. Lors de tests, j'ai eu la mauvaise surprise de constater cette erreur sur un serveur membre.
Dans ce cas, on peut se demander : est-il possible d'avoir la console "Schéma Active Directory" sur un serveur membre ? Comment faire pour utiliser la console "Schéma Active Directory" si l'on utilise des DCs en mode Core ?
La réponse est oui, on peut utiliser cette console sur un serveur membre, aux côtés des autres consoles RSAT liées à l'Active Directory. La subtilité, c'est que cette commande doit être exécutée dans une console, et non dans "Exécuter". Il peut s'agir d'une console PowerShell ou d'une Invite de commandes.
Cette fois-ci, le message "DllRegisterServer dans schmmgmt.dll réussi" apparaît, ce qui est bon signe !
Il ne reste plus qu'à ouvrir une console MMC vierge dans le but d'ajouter le composant "Schéma Active Directory". Ce dernier peut être ajouté en cliquant sur "Fichier" puis "Ajouter/supprimer un composant logiciel enfichable".
Vous voilà soulagé, la console est utilisable dès à présent sur votre serveur. Mais, attention, à utiliser avec précautions compte tenu de l'importance du schéma AD !