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-8" 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.</description>
<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 :
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "manifest.xml"
Si vous utilisez un vieux compilateur, il ce peut que les constantes CREATEPROCESS_MANIFEST_RESOURCE_ID
et RT_MANIFEST ne soit pas définies. Vous pouvez les remplacer par leur valeurs numériques.
1 24 manifest.xml
Normalement, ces identificateurs devraient être défini dans le fichier "winuser.h".
Si ce n'est pas le cas et que l'utilisation des valeurs numériques vous semble être une solution
un peu arcaïque, alors vous pouvez 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
|