Maison >développement back-end >C++ >Comment puis-je intégrer des fichiers texte en tant que ressources dans des applications Windows natives ?
Intégration de fichiers texte en tant que ressources dans des applications Windows natives
Dans la programmation Windows native, il est possible d'incorporer des fichiers texte dans le binaire en tant que ressources , permettant un accès et une manipulation pratiques au sein de l'application. Ceci est réalisé grâce à la création de ressources définies par l'utilisateur.
Pour intégrer un fichier texte, créez un fichier de ressources (.rc) et ajoutez des entrées au format suivant :
nameID typeID filename
Pour exemple :
IDC_MYTEXTFILE TEXTFILE "mytextfile.txt"
où :
Pour charger et accéder au fichier texte intégré pendant l'exécution :
#include <windows.h> #include <cstdio> #include "resource.h" void LoadFileInResource(int name, int type, DWORD& size, const char*& data) { HMODULE handle = GetModuleHandle(NULL); HRSRC rc = FindResource(handle, MAKEINTRESOURCE(name), MAKEINTRESOURCE(type)); HGLOBAL rcData = LoadResource(handle, rc); size = SizeofResource(handle, rc); data = static_cast<const char*>(LockResource(rcData)); } int main() { DWORD size = 0; const char* data = NULL; LoadFileInResource(IDC_MYTEXTFILE, TEXTFILE, size, data); char* buffer = new char[size+1]; memcpy(buffer, data, size); buffer[size] = 0; printf("Contents of text file: %s\n", buffer); delete[] buffer; return 0; }
Notez que les données intégrées ne peuvent pas être modifiées directement en raison de leur présence dans le binaire exécutable. Pour modifier la ressource, 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!