Maison > développement back-end > C++ > Comment intégrer des fichiers texte en tant que ressources dans des applications Windows natives ?

Comment intégrer des fichiers texte en tant que ressources dans des applications Windows natives ?

Susan Sarandon
Libérer: 2024-11-21 08:58:09
original
797 Les gens l'ont consulté

How to Embed Text Files as Resources in Native Windows Applications?

Intégrer un fichier texte en tant que ressource dans des applications Windows natives

Dans votre application C Windows, vous pouvez intégrer un fichier texte en tant que ressource pour évitez de l'avoir en tant que fichier séparé chargé et analysé au moment de l'exécution.

Création d'un fichier défini par l'utilisateur Ressource

Pour intégrer un fichier texte, créez une ressource définie par l'utilisateur avec le format suivant dans un fichier de ressources :

nameID typeID filename
Copier après la connexion

où :

  • nameID : Un entier non signé unique de 16 bits identifiant le ressource.
  • typeID : Un entier non signé unique de 16 bits supérieur à 255 identifiant le type de ressource.
  • filename : Le chemin d'accès au texte fichier à intégrer.

Pour exemple :

#define TEXTFILE        256
#define IDR_MYTEXTFILE  101

IDR_MYTEXTFILE TEXTFILE "mytextfile.txt"
Copier après la connexion

Chargement de la ressource

Pour charger le fichier texte intégré, utilisez le code suivant :

DWORD size = 0;
const char* data = NULL;
LoadFileInResource(IDR_MYTEXTFILE, TEXTFILE, size, data);
Copier après la connexion

où :

  • IDR_MYTEXTFILE est le nameID du ressource.
  • TEXTFILE est l'ID de type de la ressource.
  • size est la taille du fichier texte intégré en octets.
  • data est un pointeur vers les données dans le texte intégré fichier.

Accéder au contenu du fichier texte intégré

Le pointeur data pointe vers le contenu du fichier texte intégré. Vous pouvez accéder au texte comme suit :

char* buffer = new char[size+1];
::memcpy(buffer, data, size);
buffer[size] = 0; // NULL terminator
::printf("Contents of text file: %s\n", buffer); // Print as ASCII text
Copier après la connexion

Limitations

Notez que les données du fichier texte intégré sont constantes et ne peuvent pas être modifiées directement via le pointeur récupéré . Pour le modifier, utilisez les fonctions BeginUpdateResource(), UpdateResource() et EndUpdateResource().

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal