Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.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# Visual Studio-将应用程序制作成可执行文件?_C#_Visual Studio - Fatal编程技术网

C# Visual Studio-将应用程序制作成可执行文件?

C# Visual Studio-将应用程序制作成可执行文件?,c#,visual-studio,C#,Visual Studio,在VS中,我只测试了代码并对其进行了调试,但从未为最终的程序或版本准备过任何东西。我下载的一些程序有DLL,需要放在它们所在的文件夹中,而我的程序只有一个.exe。有没有一种方法可以将所有文件编译成一个应用程序而不使用外部DLL?这种糟糕的编程实践是出于某种原因吗?如何将VS程序编译成一个可执行文件 我知道这是一个很明显的问题,这就是为什么我找不到答案的原因,因为这太明显了,不可能写任何关于它的教程 使用C#或VB.NET之类的托管语言,是一个可以使用的实用工具 ILMerge是一个用于将多个.

在VS中,我只测试了代码并对其进行了调试,但从未为最终的程序或版本准备过任何东西。我下载的一些程序有DLL,需要放在它们所在的文件夹中,而我的程序只有一个.exe。有没有一种方法可以将所有文件编译成一个应用程序而不使用外部DLL?这种糟糕的编程实践是出于某种原因吗?如何将VS程序编译成一个可执行文件


我知道这是一个很明显的问题,这就是为什么我找不到答案的原因,因为这太明显了,不可能写任何关于它的教程

使用C#或VB.NET之类的托管语言,是一个可以使用的实用工具

ILMerge是一个用于将多个.NET程序集合并到单个.NET程序集的实用程序。它同样适用于可执行文件和DLL,并提供了几个用于控制输出的处理和格式的选项


使用C#或VB.NET之类的托管语言,您可以使用它

ILMerge是一个用于将多个.NET程序集合并到单个.NET程序集的实用程序。它同样适用于可执行文件和DLL,并提供了几个用于控制输出的处理和格式的选项


如果问题只是让VisualStudio构建可执行程序,那么每次在其中运行它们时,VisualStudio都会这样做。如果使用所有默认设置,请打开项目文件夹并查找/bin目录。在它下面,有一个/debug和一个/release目录。如果在调试模式下生成程序,请查看/debug目录;如果在发布模式下生成程序,请查看发布目录。VS将把程序需要的所有内容都放在该目录中。您可以将所有这些文件复制到另一台安装了.Net运行时并应运行该运行时的计算机上

如果问题更多的是将多个DLL组合成一个exe,实际上,CodePlex上有一个关于它的教程:

如您所知,对象代码的传统链接已不再必要 在.NET中。NET程序通常由多个部分组成。A. 典型的.NET应用程序由一个可执行程序集(几个 程序目录中的程序集,以及 全局程序集缓存。当程序运行时,运行时组合 所有这些部分都是程序的一部分。编译时的链接不再有效 必要的

但有时,将a的所有部分结合起来是有用的 程序需要在单个程序集中执行。比如你 可能希望通过结合 将程序、所有必需的库和所有资源整合到一个 .exe文件


最后,如果问题是关于构建广泛发行版的安装程序,那么Jan Willem B有一个WIX示例:

如果问题只是关于让VisualStudio构建可执行程序,那么每次在其中运行时它都会这样做。如果使用所有默认设置,请打开项目文件夹并查找/bin目录。在它下面,有一个/debug和一个/release目录。如果在调试模式下生成程序,请查看/debug目录;如果在发布模式下生成程序,请查看发布目录。VS将把程序需要的所有内容都放在该目录中。您可以将所有这些文件复制到另一台安装了.Net运行时并应运行该运行时的计算机上

如果问题更多的是将多个DLL组合成一个exe,实际上,CodePlex上有一个关于它的教程:

如您所知,对象代码的传统链接已不再必要 在.NET中。NET程序通常由多个部分组成。A. 典型的.NET应用程序由一个可执行程序集(几个 程序目录中的程序集,以及 全局程序集缓存。当程序运行时,运行时组合 所有这些部分都是程序的一部分。编译时的链接不再有效 必要的

但有时,将a的所有部分结合起来是有用的 程序需要在单个程序集中执行。比如你 可能希望通过结合 将程序、所有必需的库和所有资源整合到一个 .exe文件


最后,如果问题是关于构建广泛发行版的安装程序,Jan Willem B有一个WIX示例:

是的,您可以使用ILMerge嵌入托管.Net DLL!示例。

是的,您可以使用ILMerge嵌入托管.Net DLL!示例。

是否要为应用程序创建安装文件?是否要为应用程序创建安装文件?