Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在VisualStudio中编译为单个可执行文件_C++_Visual Studio - Fatal编程技术网

C++ 如何在VisualStudio中编译为单个可执行文件

C++ 如何在VisualStudio中编译为单个可执行文件,c++,visual-studio,C++,Visual Studio,当我在debug for 32 arch中构建我的项目时,我在debug文件夹中得到一个运行可执行文件所需的.dll文件,有没有办法将.dll文件嵌入可执行文件中 静态链接 我把项目链接器/输入部分中的库链接起来,并将C++目录中的所有目录添加到所有的头文件中,但我仍然得到.dll文件,我必须复制到目的文件夹,以便可执行文件工作 我已经问了一个类似的问题,并尝试静态链接库 我注意到的唯一一件事是,可执行文件更大,链接后的233kb旧大小为1500kb,我仍然得到.dll是否有任何方法将.dll文

当我在debug for 32 arch中构建我的项目时,我在debug文件夹中得到一个运行可执行文件所需的
.dll
文件,有没有办法将
.dll
文件嵌入可执行文件中

静态链接 我把项目链接器/输入部分中的库链接起来,并将C++目录中的所有目录添加到所有的头文件中,但我仍然得到.dll文件,我必须复制到目的文件夹,以便可执行文件工作

我已经问了一个类似的问题,并尝试静态链接库


我注意到的唯一一件事是,可执行文件更大,链接后的233kb旧大小为1500kb,我仍然得到
.dll

是否有任何方法将.dll文件嵌入可执行文件中?您可以这样做,但这会很复杂,您可能必须首先提取dll和真正的可执行文件。基本上,您将构建自己的安装程序可执行文件,该文件将首先将应用程序的可执行文件和DLL提取到一个临时文件夹中,然后启动您的可执行文件。您能否详细说明一下,在哪里查找,使用NSIS安装程序要比创建自己的安装程序容易得多。然而,这个想法是用二进制资源创建一个小程序,该二进制资源在.rc文件中包含应用程序可执行文件和所需的dll作为二进制资源。这个小程序将运行将2个文件提取到临时文件夹,然后从临时文件夹启动可执行文件。相关:我找到了加载dll的loadLibrary,但它不会将dll嵌入可执行文件,对吗?