2014-09-29 123 views
0

我想创建一个可移植的应用程序(无需安装程序),但据我所知,没有办法在vs2013中导出可执行文件,只有一个设置。所以我想知道是否可以从Debug文件夹中获取可执行文件。 (当然,我会首先运行/构建它以确保它是最新版本)我可以使用Debug program.exe作为独立版吗?

可以这么做,还是有更好的方法从vs2013项目获取独立可执行文件?

而且,在这种情况下,你可以认为谁可以运行该程序将安装等提前

得益于正确的.NET框架!

更新: 我的项目不包含任何DLL的,并感谢您的答案!现在很清楚。

+0

您可以从调试/发布中获得exe,那么引用的dll会发生什么?你有没有添加任何项目参考? – Kurubaran 2014-09-29 09:43:47

回答

3

这取决于你的应用使用什么。如果有额外的引用被复制到你的bin目录中,你也需要复制这些引用。同样,如果您将其他内容复制到输出目录中。但是,是的,如果您可以假设安装了正确版本的框架 - 并且安装了任何GAC安装的依赖项 - 那么“xcopy deployment”(简单地复制二进制文件)应该没问题。

请注意,您不需要需要PDB文件,尽管它们有助于提供更好的堆栈跟踪 - 而且您可能需要发布发布二进制文件而不是调试二进制文件。 (这取决于你的上下文,真的。)

1

只要你没有任何项目引用,只需从Debug/Bin文件夹复制exe就行。如果你有这个exe项目的其他项目引用,并且仍然希望在其他机器上执行此exe(而不复制引用的dll),那么你可以使用ILMerge。使用这个工具你可以将exe +多个程序集合成一个exe文件。

检查this SO线程。

相关问题