L'une des causes courantes d'erreurs ou de plantages Windows est due au fait que certains fichiers critiques du système ont été corrompus ou modifiés par rapport à leur état d'origine. Cela peut être dû à diverses raisons telles qu'une attaque de malware, des problèmes de disque dur ou tout simplement éteindre l'ordinateur de manière inattendue pendant que Windows essaie d'écrire des fichiers, lors d'une mise à jour de Windows par exemple. Bien sûr, les utilisateurs remplaçant des fichiers par des versions incorrectes ou personnalisées sont également une possibilité. Dans Windows XP, il existe une mesure de protection appelée Protection des fichiers Windows qui surveille en permanence les fichiers système importants pour les changements. Il tente de les remplacer s'ils sont supprimés, remplacés ou modifiés de quelque manière que ce soit et que la signature numérique n'est pas la même que celle attendue par Windows. Par exemple, si vous deviez renommer le fichier Explorer.exe (évidemment n'essayez pas cela), en quelques secondes, une nouvelle fenêtre Explorer.exe apparaîtra à sa place. Cela est dû au fait que Windows détient une bonne copie de ces fichiers de base dans le dossier System32.
Lorsqu'il doit remplacer un fichier système corrompu ou manquant, Windows XP recherchera dans un dossier appelé dllcache situé dans C: \ Windows \ System32. S'il y a un problème avec le fichier dans le dllcache ne correspondant pas non plus à la signature numérique, ou s'il n'y a pas de fichier présent, Windows cherchera à l'endroit suivant de sa liste qui est le dossier i386 sur le CD d'installation de Windows XP d'origine. Le dossier dllcache est masqué par défaut, donc à moins que le paramètre Afficher les fichiers cachés ne soit activé dans l'Explorateur, vous ne le verrez pas.
Cela se produit assez souvent lorsque vous devez exécuter l'utilitaire System File Checker (SFC) à partir de l'invite de commandes à l'aide de la commande SFC / Scannow. Si SFC détecte des problèmes, il tentera de remplacer les fichiers en utilisant dllcache comme source, ou à défaut, l'emplacement du dossier i386. Ensuite, vous obtiendrez la boîte de dialogue redoutée "Insérer un disque".
La chose pratique est qu'il existe un paramètre pour indiquer à Windows où rechercher le dossier i386 contenu dans une clé de registre, ce qui signifie qu'il peut être modifié vers un autre emplacement. La modification du paramètre pour dire à Windows de rechercher i386 sur un autre lecteur signifie que vous pouvez éviter d'avoir à insérer le CD chaque fois que vous exécutez une vérification des fichiers système et cela nécessite une bonne copie d'un fichier qui ne se trouve pas dans le Dllcache. La procédure est assez simple, alors voici comment procéder:
1. Insérez le CD d'installation de Windows XP dans l'ordinateur. Assurez-vous que le CD contient le même Service Pack que celui que vous avez lors de l'installation. Si vous utilisez XP SP3, assurez-vous d'avoir un CD XP SP3. N'oubliez pas non plus d'utiliser le CD de version Home ou Professional approprié pour votre installation.
2. Copiez le dossier i386 du CD d'installation à la racine du lecteur C afin de vous retrouver avec un chemin d'accès C: \ i386 \. SI vous n'utilisez pas d'autres langues que l'anglais, vous pouvez aller dans le dossier i386 et supprimer les dossiers Langues et Win9xmig, Win9xupg et Winntupg pour économiser environ 130 Mo d'espace.
3. Allez dans Démarrer -> Exécuter (ou appuyez sur la touche Win + R), tapez regedit et appuyez sur Entrée.
4. Accédez à la clé de registre suivante.
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Setup
5. Dans le volet droit, vous devriez trouver un nom appelé SourcePath avec la valeur Data comme lettre de lecteur de votre lecteur de CD-ROM. Double-cliquez sur l'entrée SourcePath et modifiez les données de valeur en C: \.
Désormais, chaque fois que Windows recherche les fichiers d'installation d'origine, il recherchera automatiquement sur votre disque dur local le dossier i386 au lieu de vous inciter constamment à insérer le CD. Vous pouvez placer le dossier i386 sur n'importe quel lecteur ou dans n'importe quel dossier que vous souhaitez, Windows recherchera où vous le souhaitez, fournissez simplement le chemin d'accès jusqu'au dossier i386, sans l'inclure (par exemple D: \ backups \ Windows \ cache \).
Bien que cela devrait fonctionner, il existe d'autres clés dans le Registre qui pourraient toujours amener Windows à demander le CD. Accédez d'abord à la clé suivante:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion
Recherchez le nom SourcePath et, s'il est présent, double-cliquez dessus et remplacez-le par le même chemin d'accès que vous avez fourni au SourcePath à l'étape 5 ci-dessus.
Un autre problème possible est si vous avez installé un Service Pack tel que SP3 sur votre installation car le système recherchera le dossier C: \ WINDOWS \ ServicePackFiles \ pour localiser tous les fichiers installés par le Service Pack. La clé ci-dessous doit avoir un nom ServicePackSourcePath présent qui pointe vers C: \ windows \ ServicePackFiles
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Setup
La dernière entrée à vérifier se trouve au même emplacement que ci-dessus, mais s'appelle CDInstall. S'il est défini sur 1, il indique à Windows qu'il a été installé à partir du CD et peut essayer de rechercher un CD même si vous lui avez dit de ne pas le faire. La définition de cette valeur sur 0 indique à Windows qu'il a été installé à partir du disque dur ou du réseau.