Bonjour Pierre,
Après un crash puis un redémarrage avec
CHKDSK, ma visionneuse d'image Windows ne fonctionnait plus.
Une recherche Google m'a fait découvrir ce site que je ne connaissait pas : toutes mes félicitations pour la qualité des articles et notamment de celui-ci et de celui concernant "l'enfer des Dll" qui m'ont fourni la solution à mon problème (avec l'aide de Microsoft).
Après un sfc /scannow, je me suis retrouvé dans le pire des scénarios :
La protection des ressources Windows a trouvé des fichiers endommagés, mais n'a pas réussi à tous les réparer. Des détails sont inclus dans le journal CBS.Log windir\Logs\CBS\CBS.Log. Par Exemple C:\Windows\Logs\CBS\CBS.LogL'analyse de CBS.Log montre que 3 dll sont endommagées (ImagingEngine.dll, DevicePairingFolder.dll et msvfw32.dll)
et que les 3 dll correspondantes contenues dans la bibliothèque des ressources winSxS sont également endommagées d'où l'échec du scannow.
Avant d'appliquer la solution indiquée ci-dessus (
http://www.chantal11.com/...), j'ai cherché s'il n'était pas possible de remplacer uniquement les dll défaillantes.
Microsoft propose une solution ici :
Procédure de remplacement manuel d'un fichier système endommagé par une copie correcte du fichierJe me suis procuré les 6 dll endommagées sur un autre ordinateur disposant du même système d'exploitation (en l'occurrence de Windows 7), par simple copier / coller sur une clé USB, d'une part de la dll et d'autre part du répertoire de winsxs contenant la même dll.
J'ai du tâtonner pour appliquer la méthode proposée par Microsoft.
Cette méthode repose sur 2 lignes de commandes (en mode administrateur) :
- la première permet de prendre possession d'un fichier :
takeown /f Chemin_Et_Nom_Fichier- la seconde permet d'accorder un accès complet à ce fichier (en français, administrators devient administrateurs) :
icacls Chemin_Et_Nom_Fichier /grant administrateurs:FPour l'exemple, voici comment j'ai réparé le premier couple de dll, (même méthode pour les 2 autres). Il s'agissait des deux emplacements suivants :
C:\Windows\WinSxS\x86_microsoft-windows-imagingengine_31bf3856ad364e35_6.1.7601.17514_none_2df065c88c5d1cef\ImagingEngine.dllet
C:\Program Files\Windows Photo Viewer\ImagingEngine.dllJ'ai pris possession de la dll endommagée dans winsxs :
takeown /f C:\Windows\WinSxS\x86_microsoft-windows-imagingengine_31bf3856ad364e35_6.1.7601.17514_none_2df065c88c5d1cef\ImagingEngine.dll Je me suis accordé les droits de grand administrateur :
icacls C:\Windows\WinSxS\x86_microsoft-windows-imagingengine_31bf3856ad364e35_6.1.7601.17514_none_2df065c88c5d1cef\ImagingEngine.dll /grant administrateurs:FDepuis l'explorateur Windows,
j'ai supprimé la dll endommagée.
J'ai pris possession
du répertoire contenant la dll endommagée dans winsxs :
takeown /f C:\Windows\WinSxS\x86_microsoft-windows-imagingengine_31bf3856ad364e35_6.1.7601.17514_none_2df065c88c5d1cefJe me suis accordé les droits de grand administrateur :
icacls C:\Windows\WinSxS\x86_microsoft-windows-imagingengine_31bf3856ad364e35_6.1.7601.17514_none_2df065c88c5d1cef /grant administrateurs:FDepuis l'explorateur Windows,
j'ai copié la dll depuis la clé USB vers ce répertoire.
J'ai ensuite répété ces opérations pour la même dll située en "C:\Program Files\Windows Photo Viewer\ImagingEngine.dll" (penser à mettre des guillemets à cause des espaces), mais la prise de possession du répertoire (et des droits) n'est pas nécessaire dans ce cas.
Finalement j'ai fait de même pour les deux autres couples de dll et tout est rentré dans l'ordre.
J'espère que cette méthode pourra aider quelqu'un.
Cordialement
Patrice