Comment cooker une ROM WP7 (Partie 2 : Maîtrise plus complète, etc...)
Attention, cette Partie 2 du tuto est en construction, et est donc encore incomplète.
Préambule
Pour des raisons personnelles, quelques fois nous avons envie de créer nos propres ROMs Customs, pour ajouter des fonctionnalités, modifier le SplashScreen, ajouter des xap par défaut, etc... Bref il y a pleins pleins de raisons, c'est pourquoi j'ai décidé de monter ce tuto. Ce tuto fait suite à la première partie "Comment cooker une ROM WP7 (Partie 1 : Débutant, les bases, etc...)".
Attention : Si vous travaillez sur la ROM d'un autre Cuisto, que ce soit de ce Forum ou d'un autre, afin d'éviter à Génération mobiles tout litige, vous devez avoir l'autorisation de ce Cuisto si vous voulez publier votre ROM.
Prérequis
• Téléchargez "OSBuilder 1.4.223", puis installez le.
• Téléchargez une ROM Custom WP7, par exemple la "Gen-Mob v1 (2 langues)" pour le Samsung Omnia 7, puis décompressez l'archive.
• Je vous conseilles de regardez les vidéos, pour en apprendre d'avantage. C'est par ici.
Dernière édition par hBk0dY le Ven 2 Nov 2012 - 22:13, édité 13 fois
Attention, cette Partie 2 du tuto est en construction, et est donc encore incomplète.
Intégration des xap
Intégration des xap dans les Packages
Pour intégrer un xap dans les Packages, nous avons besoin bien évidement des xap et d'un "registry file", ("Fichier registre" en Français, ou encore "Éditeur de registre") qui porte l'extension ".rgu". Localisez le Package des xap, ensuite faites un click droit puis "Open" éditez le fichier rgu (1).
Dans le fichier rgu, vous devriez avoir à peu près :
Attention, cette Partie 2 du tuto est en construction, et est donc encore incomplète.
Intégration des wallpapers
Intégration des wallpapers dans les Packages
Pour intégrer un wallpaper (image, fond d'écran, photo, etc...) dans les Packages, nous avons besoin bien évidement des wallpapers et d'un "Registry file", ("Fichier registre" en Français, ou encore "Éditeur de registre") qui porte l'extension ".rgu". C'est un peu la même procédure que l'intégration des xap.
Localisez le Package des wallpapers (1), ensuite faites un clique droit sur le fichier rgu, puis "Open" (2).
Dans le fichier rgu, vous devriez avoir à peu près :
Donc pour intégrer un wallpaper, il faut tout simplement ajouter cette ligne en modifiant "Nom_du_wallpaper" en fonction du nom du wallpaper
Code:
"\\windows\\Nom_du_wallpaper.jpg"
ATTENTION : Ce n'est pas aussi simple, en effet il faut que pour la dernière ligne de code du dernier wallpaper, il n'y est pas de "virgule" => "," en fin de ligne. Exemple :
Pareil pour toutes les lignes de code des wallpaper, même la ligne du premier wallpaper, excepté la dernière (maintenant vous savez pourquoi), il faut une virgule en fin de ligne. Exemple :
Attention, cette Partie 2 du tuto est en construction, et est donc encore incomplète.
Intégration des clé de registre
Intégration des clé de registre dans les fichier .rgu
Pour intégrer une clé de registre nous avons besoin de clé de registre (vous en avez pleins pleins pleins sur xda (plus de 80 pages), en cherchant un minimum). Nous avons besoin aussi d'un fichier .rgu.
Sélectionnez un Package (1), puis faites un clic droit sur le fichier .rgu, puis "Open" (2).
Attention, cette Partie 2 du tuto est en construction, et est donc encore incomplète.
Intégration des Packages dans les Packages .sof et .cif
Intégrer un Package dans les Packages .sof et .cif
Explication image
Faites les même étapes pour les .cif que pour les .sof.
Explication texte (dans mes 3 explication, je reprend le même exemple que l'explication 1)
Explication rapide : Tous les fichiers RGU qui sont dans les Packages (ROM, OEM et SYS) sont fusionnés et forment le registre de démarrage du Téléphone.
Explication 1 : L'ordre compte, par exemple : Pour les RGU si vous avez un pkg avec HKLM\Non Valeur ="Valeur1" et après un Pkg avec HKLM\Non Valeur ="Valeur2", suivant l'ordre des pkg, vous aurez au final soit Valeur1 soit Valeur2.
Explication 2 : Si vous avez un pkg1 avec HKLM\Non Valeur ="Valeur1" et un pkg2 avec HKLM\Non Valeur ="Valeur2" Si dans votre .sof et .cif, pkg1 est en ligne 50 et que pkg2 est en ligne 100, votre valeur registre sera Valeur2, mais si pkg1 est en ligne 50 et que pkg2 est en ligne 45, votre valeur registre sera Valeur1.
Explication 3 : Si dans mon exemple (ma clé de registre HKLM\Non) le pkg1 est placé avant le pkg2 dans .sof et .cif, lors de la fusion la valeur de ma clé sera "Valeur1" Si dans mon exemple (ma clé de registre HKLM\Non) le pkg1 est placé après le pkg2 dans .sof et .cif, lors de la fusion la valeur de ma clé sera "Valeur2" car le RGU du pkg1 va écraser celui du pkg2.
FAQ
Dans un pkg, peut il y avoir plusieurs clé ? Dans un pkg vous avez un seul RGU (plusieurs clés de registre possible) avec le même nom que le DSM.
Quel est le bon ordre alors ? L'ordre est a vous de le faire, si vous voulez un pkg qui doit modifier des valeurs registre, il doit être placé après le pkg d'origine pour pouvoir écraser les valeurs.
Si l'odre n'est pas bon, le ROM peut ne pas fonctionnée correctement ? Oui si votre ordre n'est pas bon, votre rom peut ne pas fonctionner correctement.
Dans les Packages .sof et .cif, enfaite est-ce mieux de mettre les packages qui contiennent les RGU tout à la fin (quand on veut que la valeur prenne tout le temps "le dessus") ? Oui.
Dans les Packages .sof et .cif, si il y a qu'une seule est même clé de registre ex : pkg1 avec HKLM\Non Valeur ="Valeur1" (pas d'autre Pkg qui contient la même clé) on peut le mettre à n'importe quel ligne ? Oui.
Dernière édition par hBk0dY le Dim 30 Déc 2012 - 16:10, édité 1 fois
Attention, cette Partie 2 du tuto est en construction, et est donc encore incomplète.
Certificat et Signature Numérique
Création d'un Certificat et de sa Signature Numérique
Téléchargez "Utilitaires Cook WP7 Titi66200.zip", puis décompressez l'archive.
Allez dans le dossier "WP7 Update Cab Builder\Certificat". Éditez le fichier "Créer un Certificat.bat" avec le Bloc-notes. Remplacez tous les "Titi66200" par le nom du Certificat que vous voulez.
Enregistrez les modifications puis lancez "Créer un Certificat.bat". Un mot de passe est demandé, cliquez sur "aucun".
Vous avez maintenant trois nouveaux fichiers : "Nom du certificat.cer" qui est le certificat (utilisé dans la création de la ROM et des cabs de mise à jour). "Nom de la clé privé.pvk" qui est la clé privé (n'est plus utilisé mais à conserver). "Nom de la signature numérique.pfx" qui est la signature numérique (utilisé pour signer les cabs de mise à jour).
Intégration du certificat dans la ROM
Ouvrez le "Dump" de la ROM dans OSBuilder. Allez dans "Tools" puis "Edit DefaultCerts.dat".
Allez dans "Certificates" et "Add".
Sélectionnez le certificat et cliquez sur "Ouvrir".
Allez dans "File" puis "Save".
Le premier Certificat est installé.
Allez dans "Tools" puis "Edit MsDefaultCerts.dat". Allez dans "Certificates" puis "Add".
Sélectionnez le certificat et cliquez sur "Ouvrir".
Allez dans "File" puis "Save".
Le deuxième Certificat est maintenant installé. Il est possible aussi de l'intégrer dans "Edit MsDefaultCerts.dat [SLDR]" et "Edit MsDefaultCerts.dat [SLDR]" (cela demande une reconstruction de la SLDR pendant la création de la ROM).
Intégration du certificat dans les DSM des Packages OEM de la ROM
Il est fortement conseillé d’intégrer le certificat dans ces DSM, ceci permettra de modifier ses Packages dans le futur avec des mises à jours par cab. Explication rapide : Pour pouvoir modifier un Package dans la ROM il faut que ce dernier contienne le certificat de la personne qui a signé le cab de mise à jour.
Cliquez avec le bouton droit de la souris sur le Package OEM à modifier et "Edit DSM".
Cliquez sur l'onglet "Certificates".
Cliquez avec le bouton droit de la souris et "Add from .cer file".
Sélectionnez le certificat et cliquez sur "Ouvrir".
Faire cette manipulation avec tous les Packages OEM.
Dernière édition par hBk0dY le Ven 4 Jan 2013 - 1:57, édité 1 fois