Intro :
Dans un exécutable Windows, on peut stocker plusieurs fichiers. Ces fichiers en question s’appellent des « ressources ».
Prérequis :
– Savoir lire du C++
– Savoir se servir de Visual Studio C++
Explications :
Le fichier à intégrer peut-être de n’importe quel format !
On déclare ainsi dans le fichier de déclaration de ressource, la ressource en question, avec le patron de schéma suivant :
nameID typeID filename
Ce contenu doit être mis dans un fichier ressource.h
Le nom du fichier « filename » spécifie le nom d’un fichier contenant des données binaires de la ressource. Le contenu du fichier est intégré dans la ressource spécifiée. A noter que les données doivent être proprement alignées pour récupération sur une autre architecture.
Les données peuvent être définies directement entre les accolades de la manière suivante :
nameID typeID { raw-data }
18 MYRES2
{
"Here is an ANSI string\0", // explicitly null-terminated
}
Paramètres :
nameID : un unique nom ou une valeur de 16 bits en tout (unsigned integer) qui identifie la ressource
typeID : un unique nom (chaîne de caractères) ou un entier de 16 bits (unsigned integer) qui identifie le type de la ressource. Si un nombre est spécifié, il doit être supérieur à 255, les autres nombres sont réservés
filename : nom (chaîne de caractères) du fichier qui contient les données de la ressource. Ce nom doit correspondre à un fichier valide et existant, le nom du fichier doit être un chemin complet s’il n’est pas dans le répertoire courant
raw-data : données brutes consistant en plusieurs entiers ou chaînes de caractères
Résumé :
Nous avons présentée une méthode permettant d’intégrer des fichiers au sein de votre application C++. Il est aisé de récupérer leur contenu avec la fonction présentée ci-dessus.
Références :
– http://stackoverflow.com/questions/2933295/embed-text-file-in-a-resource-in-a-native-windows-application
– https://msdn.microsoft.com/en-us/library/aa381054(VS.85).aspx

