Discussion: Dossier: Modifications avancées: L'édition de DLL
Afficher un message
#4
Vieux 11/02/2007, 23h10
Le remplacement des fichiers
Lefreut
-
Avatar de Lefreut
Team CustomXP.net
Date d'inscription : août 2003
Messages : 5 816
Lefreut est déconnecté
Dernière étape, le remplacement du ou des fichiers en cours d'utilisation par celui ou ceux que vous venez de modifier.

Remplacement à la main
Méthode pratique tant que vous n'avez qu'à remplacer un ou deux fichiers, mais qui devient un enfer quand vous avez 30 fichiers à remplacer.

Première chose, il faut savoir que XP intègre un système de vérification des fichiers systèmes qui fonctionne en temps réel. De même, une dll comme shell32 sera systématiquement en cours d'utilisation par votre système ce qui vous empêchera ( de prime abord ) de faire quelques manipulations que ce soit sur le fichier.

Pour le problème du système de vérification des fichiers systèmes
- Soit vous effectuez les manipulations qui vont suivre en mode normal, et dans ce cas une fenêtre de warning viendra vous embêter. Il faudra dans ce cas décliner la proposition de Windows de restaurer les fichiers qui viennent d'être modifiés et confirmer juste derrière.

- Soit vous opérez en mode sans échec. Il vous suffit de presser F8 au démarrage pour démarrer sur ce mode.
Ensuite, pour faire le remplacement en lui même, voici la marche à suivre :
Ouvrez le répertoire contenant votre dll de remplacement et copiez le fichier en mémoire ( ctrl + c )
Ouvrez ensuite le répertoire système contenant le fichier d'origine, le plus souvent c:\windows\system32\
Changez le nom du fichier d'origine en pressant F2 et renommez le avec l'extension .bak
Copiez votre fichier modifié qui est en mémoire dans le même répertoire ( ctrl + v )

Il faut maintenant supprimer les doublons du fichier utilisés par la restauration du système dans les répertoires suivants :
c:\windows\system32\dllcache
c:\windows\servicepackfiles\i386


Et y copier votre dll modifiée avec ctrl + v par exemple.
Pourquoi remplacer également le fichiers dans ces deux répertoires ? tout simplement car si windows essaie de restaurer le fichier au redémarrage après avoir identifié que celui de system32 est modifié, il utilisera une des copies présentes dans l'un de ces deux répertoires complémentaires. Ainsi, en ayant modifié également les copies de sauvegarde, même si le fichier est restauré, la version utilisée pour la restauration sera bien celle modifiée par vos soins.

Evidement, les modifications ne seront visibles qu'une fois votre machine redémarrée.
Information: Il se peut que certaines icônes n'aient pas changé même après avoir redémarré. C'est dans ce cas le cache d'icône, sorte de mémoire vive tampon qui vous joue des tours. Utilisez par exemple IconToolz pour reconstruire le cache d'icône, vos icônes modifiées apparaîtront alors.


Utiliser un script de remplacement
La modification des fichiers systèmes ayant fait énormément d'émules au sein de la communauté des customiseurs, certains membres ont créé des scripts de remplacement automatique permettant de s'affranchir de toutes ces manipulations et de ne pas être dérangé par la protection des fichiers systèmes de XP.

Vous pouvez donc utiliser Replacer ou bien ReplaceIt tout deux dédiés au remplacement "en live" des fichiers systèmes par simple glisser/déposer.
Pour vous en servir, faites comme suit :
Dézippez le script dans un répertoire temporaire
Lancez rep.bat pour replaceit ou replacer.cmd pour Replacer
Attrapez le fichier modifié à remplacer et glissez le sur la fenêtre du script et validez
Ensuite, suivez le reste des instructions du script
Pour terminer, redémarrez votre machine.

Utiliser LockedCopy
Bricomix, ex-membre de CustomXP.net a mit au point un petit logiciel de remplacement très pratique car complètement interfacé, il s'agit de LockedCopy.



Récupérez le fichier, installez le logiciel et lancez le. L'interface se résume uniquement à une fenêtre dont il va falloir renseigner les champs :
Dans le premier champs, sélectionnez le fichier modifié à utiliser ( ici shell32.dll dans votre rép. de travail )
Spécifiez dans le second champs le répertoire d'origine du fichier ( ici \system32\ )
Cochez Autoriser le remplacement de fichier système
Validez par ok
Si le fichier est protégé par le système, ce qui est le cas pour shell32, le redémarrage du système sera alors automatiquement proposé et le remplacement du fichier effectué lors de la phase de redémarrage de l'OS, avant que le fichier ne soit chargé en mémoire.
Dernière modification par bubka ; 25/04/2009 à 13h15.

Réponse avec citation Haut de page