Introduction :
Cette article a pour but de vous montrer comment mettre votre propre
fichier manifest dans les ressources de vos applications, afin de leur donner
le style graphique de Windows XP, sous Windows XP bien sûr.
La copie d'écran si dessous est l'exemple de
la barre d'état
auquel nous avons donnée le style XP.
Mise en application :
Pour donner le style des thèmes XP à vos applications,
il faut leur associer un fichier xml appelé manifest",
dont voici un exemplaire ci-dessous :
manifest.xml :
<?xml version="1.0" encoding="UTF-9" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86"
name="CompanyName.ProductName.YourApplication" type="win32"/>
<description>Description de votre application ici.
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls"
version="6.0.0.0" processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df" language="*"/>
</dependentAssembly>
</dependency>
</assembly>
Ce fichier comporte des informations sur votre application,
notamment son identité dans les attributs de l'élément assemblyIdentity,
sa description dans l'élément description que vous pouvez remplir
avec les données concernant votre application.
L'élément important pour donner le style XP est l'élément assemblyIdentity
de l'élément dependentAssembly de l'élément dependency.
Il fournit les informations pour trouver l'assembly fournissant les contrôles au style XP.
Il ne doit donc pas être modifié Pour information les assemblies
sont des dlls spécifiques à la plateforme DotNet.
(C'est un avant goùt la gestion des dlls sur les futurs versions de Windows)
La première solution pour utiliser ce fichier manifest est de le joindre
à votre application. Il suffit pour cela de lui donner le même nom
que votre exécutable avec l'extension "manifest" et de le déposer dans
le même dossier. Exemple : si votre exécutable se nomme "WinMain.exe"
le fichier manifest se nommera "WinMain.exe.manifest".
Mais sûrement que vous préfererez qu'il soit intégré l'exécutable.
La solution est de le mettre dans ses ressources.
Si vous avez fait des recherches sur le Net sur le sujet,
vous avez sûrement trouvé à télécharger un fichier de ressource compilé .res
à lier à votre exécutable. Nous, nous allons aller un tout petit peu plus loin,
nous allons le créer nous-même, ce qui vous permettra d'en personnaliser
la partie concernant votre application.
Pour cela nous allons d'abord nommer le fichier manifest en "manifest.xml",
puis nous l'ajouterons script de ressources :
1 24 manifest.xml
Ici l'identificateur de la ressource est "1" son type est "24" son contenu est celui
du fichier manifest.xml
(mettre le chemin complet du fichier avec Dev-C++, même s'il ce trouve dans le même dossier).
Pour être un peu plus conventionnel, on aurait pu nommer l'identificateur
et le type de la ressource par leurs noms.
Normalement ils devraient êtree défini dans le fichier "winuser.h",
mais la version de ce fichier jointe avec les compilateurs souvent trop ancienne,
fait qu'il ne comporte pas cette définition.
Nous pouvons alors par exemple les définir dans un fichier entête nommé "manifest.h".
manifest.h :
#ifndef CREATEPROCESS_MANIFEST_RESOURCE_ID
#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
#endif
#ifndef RT_MANIFEST
#define RT_MANIFEST 24
#endif
Et dans le script de ressources nous l'appelerons alors par :
#include "manifest.h"
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "manifest.xml"
Vous pouvez aussi modifier votre fichier "winuser.h".
Voilà nous somme maintenant équipé pour donner du style (XP) à nos nos applications.
A vos PC.
CGi
|