将文本文件作为资源嵌入本机 Windows 应用程序
在本机 Windows 编程中,可以将文本文件作为资源嵌入到二进制文件中,允许在应用程序内方便地访问和处理。这是通过创建用户定义的资源来实现的。
要嵌入文本文件,请创建资源文件 (.rc) 并按以下格式添加条目:
nameID typeID filename
对于示例:
IDC_MYTEXTFILE TEXTFILE "mytextfile.txt"
其中:
在运行时加载和访问嵌入的文本文件:
#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; }
请注意,嵌入数据无法直接修改,因为它存在于可执行二进制文件中。要修改资源,请使用 BeginUpdateResource()、UpdateResource() 和 EndUpdateResource() 函数。
以上是如何将文本文件作为资源嵌入到本机 Windows 应用程序中?的详细内容。更多信息请关注PHP中文网其他相关文章!