Heim > Artikel > Backend-Entwicklung > Wie kann ich Textdateien als Ressourcen in native Windows-Anwendungen einbetten?
Textdateien als Ressourcen in native Windows-Anwendungen einbetten
In der nativen Windows-Programmierung ist es möglich, Textdateien als Ressourcen in die Binärdatei einzubetten , was einen bequemen Zugriff und eine bequeme Handhabung innerhalb der Anwendung ermöglicht. Dies wird durch die Erstellung benutzerdefinierter Ressourcen erreicht.
Um eine Textdatei einzubetten, erstellen Sie eine Ressourcendatei (.rc) und fügen Sie Einträge im folgenden Format hinzu:
nameID typeID filename
Für Beispiel:
IDC_MYTEXTFILE TEXTFILE "mytextfile.txt"
wobei:
So laden Sie die eingebettete Textdatei während der Laufzeit und greifen darauf zu:
#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; }
Beachten Sie, dass die eingebetteten Daten aufgrund ihrer Anwesenheit nicht direkt geändert werden können innerhalb der ausführbaren Binärdatei. Um die Ressource zu ändern, verwenden Sie die Funktionen BeginUpdateResource(), UpdateResource() und EndUpdateResource().
Das obige ist der detaillierte Inhalt vonWie kann ich Textdateien als Ressourcen in native Windows-Anwendungen einbetten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!