#2
Vieux 20/01/2007, 21h26
Custo système avec Batchmod : Présentation
Lefreut
-
Avatar de Lefreut
Team CustomXP.net
Date d'inscription : août 2003
Messages : 5 816
Lefreut est déconnecté
Introduction
Vous le savez certainement, une des techniques la plus efficace pour modifier son interface est l'édition de fichier système, tels que les .exe, .dll ou encore .cpl ( applets du panneau de configuration ). Pour cela, il existe plusieurs outils dont le plus connus est probablement resource hacker. Cet éditeur permet de remplacer n'importe quelle ressource ( avi, bitmap, icones ) encapsulée dans un fichier afin d'en générer une version customisée. Seulement cette technique est longue et fastidieuse, et en décourage d'avance sûrement plus d'un...
Ce tutoriel a donc pour but de vous faire découvrir un autre technique, utilisant entre autre les fonctionnalités de reshack, mais sans être contraint par le manque de souplesse de son interface. Et vous allez voir très rapidement que l'ensemble des d'outils utilisés pour arriver à nos fins permet une autre opération toute aussi intéressante, la mise à jour de fichiers systèmes déjà moddés !
A l'issue de la lecture de ce tutoriel, vous serez donc en mesure de modifier rapidement et facilement un bon nombre de vos fichiers systèmes, mais vous pourrez également procéder à leur remplacement tout aussi aisément. Cela étant dis, il convient de signaler que bien que simplifiée par rapport à l'utilisation standard de reshack, cette technique nécessite tout de même un peu de temps de préparation/sélection des ressources.

Principe de base
Voila les grandes lignes de travail pour arriver à une custo approfondie grâce à l'édition de fichier système :

Tout d'abord, la récolte de fichier système contenant des ressources graphiques :
Opération relativement aisée si tant est que l'on dispose d'une liste tout prête, histoire de ne pas avoir à scanner chaque fichier du répertoire \windows. La copie de ces fichiers dans un répertoire de travail étant indispensable pour avoir les droits en écriture au moment de leur modification.
Seconde étape, la préparation des ressources de remplacement :
Sachant que vous vous apprêtez à remplacer certaines ressources par d'autre, il parait évident de choisir les nouvelles ressources qui vont être utilisées. Cela parait des plus anodin, mais cette opération demande souvent beaucoup de temps de tri et de préparation.
Troisième étape, l'extraction et le remplacement des ressources :
Une fois vos ressources prêtes, vos fichiers a modifier copiés, c'est au tour de ressource hacker de se mettre au travail. Cette étape est de loin la plus contraignante de toutes car elle demande de traiter chaque ressource de chaque fichier une par une ! Ceux qui ont déjà opéré ce genre de manipulation savent de quoi je parle.
Quatrième et dernière étape, le remplacement des fichiers modifiés :
Dès lors que tout vos fichiers sont modifiés et prêts à l'emploi, rien ne serait possible sans leur utilisation. Il convient donc d'écraser tous les fichiers utilisés par votre système par ceux que vous venez de modifier. Encore une fois, l'opération peut paraître enfantine, mais ce rusé de XP réserve bien des surprises dès lors que l'on touche à ses organes vitaux !
Sachant que la deuxième étape est forcement différente pour chaque custo ( chacun ira de ses icônes favorites par exemple ), sachez que ce tutoriel ne vous apportera rien a ce niveau, si ce n'est vous conseiller de ne pas "bâcler" cette étape, et de la faire de façon ordonnée. En effet, si vous optez pour une custo poussée ( plusieurs 10 aines de fichiers a modder ), cela peut très vite devenir le foutoir dans vos dossiers de travail. Pensez donc dans un premier temps à bien isoler les ressources dans des sous dossiers, quitte à créer un sous dossier par fichier modifié pour y placer les ressources qui lui sont propres. De la même façon, il est plus pratique de définir une bonne fois pour toutes les ressources à utiliser, cela vous évitera lors des étapes suivantes de vous embrouiller avec les icônes a utiliser, celles a laisser de coté, les bitmaps en attente de modif, ceux déjà modifiés, etc... Plus vous serez carrés dans vos manipulations, plus le travail se fera facilement.

Les outils utilisés
Passons maintenant aux outils nécessaires pour notre custo. Nous l'avons vu, reshack reste un incontournable malgré sa lourdeur d'utilisation, et les autres étapes demandent beaucoup de manipulation de fichier, avec une gestion des versions ( moddées ou non ) assez délicate.
Alors histoire de ne pas se fatiguer dans d'interminables copier/coller ou je ne sais quoi d'autre, nous allons utiliser des scripts automatisant une bonne partie du travail. Windows met à disposition un moteur de script performant, permettant un bon nombre d'opération, donc pourquoi s'en priver ?! Et de surcroît, je vous annonce d'entrée de jeu qu'aucun script ne sera à coder, tout est déjà disponible, prêt à l'emploi, et très facile d'utilisation.

L'ensemble de script a utiliser s'appelle "Batchmod".
Ce package, réalisé par le membre cbw.l4v4 du forum Aqua-soft.org réunis des javascripts et des fichiers de commande .cmd. Grâce à batchmod, nous allons pouvoir en 2 clics de souris :
  • Extraire tout un lot de fichier système intégrant des ressources graphiques des répertoires systèmes.
  • Extraire toutes les ressources présentes dans ces fichiers.
  • Réintégrer les ressources après les avoir manuellement modifié.
  • Replacer les fichiers dans leur répertoire de travail respectif.
  • Au besoin, restaurer les fichiers d'origine de XP.


Une fois le téléchargement terminé, décompressez le contenu de l'archive dans votre répertoire de travail. ( c:\wip pour l'exemple ). Vous y trouverez une fois l'opération terminée un sous répertoire BATCHMOD, contenant 7 sous répertoires, 6 fichiers de commandes .cmd et un fichier texte d'aide.

Voyons maintenant l'utilité de chacun des scripts présents et des sous répertoires :

"copy.cmd"
Ce script permet de scanner vos répertoires systèmes afin de copier les fichiers utiles à notre custo vers un répertoire temporaire, plus exactement le répertoire "_IN" accompagnant nos scripts. Une fois lancé, ce script s'appuie sur le script "replacer" ( présent dans le sous rep. "tools\replacer" ) et son fichier "data" pour copier tout le nécessaire rapidement et sans effort.
"Extract.cmd"
Ce script permet d'extraire toutes les ressources graphiques ( avi, icône, bitmap, curseur ) encapsulées dans des fichiers systèmes. Il va scanner le contenu du sous répertoire "_SOURCE" et pour chaque fichier, créer un sous dossier dans le répertoire "ressources" contenant les ressources. Ce script est particulièrement utile lors de mise à jour de fichiers déjà modifiés sachant que tout ce qu'il va extraire va être réutilisé pour modifier nos fichiers présents dans "_IN".
"modify.cmd"
Grâce à ce script, c'est le remplacement automatique des ressources dans nos fichiers qui va être effectué. Toutes les ressource précédemment extraites vont être ré-injectées dans nos fichiers vierges présents dans "_IN", et ces mêmes fichiers une fois modifiés seront copiés vers le répertoire "_OUT". Pour ceux qui aurait déjà pratiqué des modifs avec reshack, c'est ce script qui nous évite toutes les manipulations interminables de remplacement des ressources, normalement une par une. Il est à noter que ce script utilise aussi reshack, mais en ligne de commande. C'est pourquoi vous trouverez le sous répertoire "tools\ResHack" dans le répertoire batchmod.
"replace.cmd"
replace.cmd effectue l'opération inverse du script copy.cmd. Il est utilisé une fois les fichiers modifiés pour les remettre dans leur répertoire de travail respectif. Comme son grand frère, replace.cmd fait appel au script "replacer" afin de tout remettre en ordre. Une fois son travail terminé, vous serez normalement en mesure de redémarrer pour admirer votre nouvelle custo.
"auto.cmd"
Ce script est un "tout en un". Il permet de lancer l'ensemble des scripts détaillés ci dessus un à un, ce qui est particulièrement utile lors de mise à jour.
"restore.cmd"
Ce dernier script est votre sauveur en cas de problème. Encore une fois, il fait appel au script "replacer", afin de restaurer l'ensemble des fichiers d'origines. Il sera utile également si vous souhaitez annuler l'ensemble des modifs effectuées ( pas besoin de plantage pour avoir envie de l'interface d'origine )
Voila pour les outils. Vous l'avez vu, rien de bien compliqué, le tutoriel pourrait presque s'arrêter la vu la simplicité d'utilisation de Batchmod ! mais comme nous ne sommes pas avares d'informations, la suite du dossier va vous menez pas à pas dans l'utilisation de batchmod, afin d'avoir un exemple concret sous les yeux.

Dernière modification par bubka ; 25/04/2009 à 13h21.

Réponse avec citation Haut de page