包括C+中.exe应用程序中的文件(dll、txt等)+; 我用C++编写了一个程序,使用了很多文件,比如.dll或png。 程序和文件位于同一目录中。 是否可以在.exe应用程序中包含文件? 所以我只需要.exe文件来运行程序。
啊,是的。答案是在您正在运行的可执行文件的末尾写入您需要的所有文件,这些文件包含在一个zip文件中。以下是:(写入可执行文件)和[断开链接](读取可执行文件)的方法。这是有趣的东西;好问题包括C+中.exe应用程序中的文件(dll、txt等)+; 我用C++编写了一个程序,使用了很多文件,比如.dll或png。 程序和文件位于同一目录中。 是否可以在.exe应用程序中包含文件? 所以我只需要.exe文件来运行程序。,c++,file,dll,include,exe,C++,File,Dll,Include,Exe,啊,是的。答案是在您正在运行的可执行文件的末尾写入您需要的所有文件,这些文件包含在一个zip文件中。以下是:(写入可执行文件)和[断开链接](读取可执行文件)的方法。这是有趣的东西;好问题 请注意,您不能对DLL文件执行此操作-它们必须与可执行文件位于同一目录中,或者安装在计算机上。有趣的问题和答案 我很久以前就这样做了,将所有文件作为资源放在.exe中,然后使用以下过程提取它们: HRSRC hResInfo = FindResource(NULL, MAKEINTRESOURCE(MY_RE
请注意,您不能对DLL文件执行此操作-它们必须与可执行文件位于同一目录中,或者安装在计算机上。有趣的问题和答案 我很久以前就这样做了,将所有文件作为资源放在.exe中,然后使用以下过程提取它们:
HRSRC hResInfo = FindResource(NULL, MAKEINTRESOURCE(MY_RESOURCE_ID), MY_RESOURCE_TYPE);
HGLOBAL hRes = LoadResource(NULL, hResInfo)
LPVOID lpData = LockResource(hRes);
HANDLE hFile = CreateFile(....)
WriteFile(hFile, lpData, SizeOfResource(NULL, hResInfo), ...);
CloseHandle(hFile)
我的实现的问题是,每次添加新文件时,我都必须重新编译.exe(幸运的是,这只发生了一两次),但最好知道它在后台是如何工作的。根据您使用的框架,您可以将png文件添加到可执行文件中。如果不从某个地方提取DLL,则无法添加。这是一种更简单的方法,但是如果没有Visual Studio的Pro版本,则很难管理资源文件。