【问题标题】:create .exe from c# windows application从 c# windows 应用程序创建 .exe
【发布时间】:2011-07-19 16:28:17
【问题描述】:

我创建了一个 Visual Studio 2010 项目,该项目创建了一个 Windows 窗体 - 它引用了许多其他 dll。

如何将其打包成一个 .exe 文件?

【问题讨论】:

  • 你想静态链接一个DLL?
  • 你应该创建一个安装文件
  • @Rasel:什么? OP 想要一个独立的 exe,而不是安装程序...

标签: c# windows winforms exe


【解决方案1】:

ILMerge 是您使用 /t:exe 选项查找的内容。

示例调用如下所示:

ilmerge.exe exefile.exe [dlls-to-internalize.dll ..] /out:exefile-out.exe /t:exe

使用 ILMerge 将多个 dll 打包成一个并内化它们的示例用法可以在此处找到:dotlesscss buildfile

有关使用 ILMerge 的更多信息,请访问ILMerge Website。 你也可以通过NuGet通过Chocolatey获得它

它允许您通过重写引用将多个 .NET 程序集打包到一个文件中。 您还可以内部化您的依赖项,以防您向某人提供库并且不想与您内部使用的库造成依赖项冲突。

【讨论】:

  • +1,尽管我必须警告您 ILMerge 对某些 DLL 很挑剔。不过总的来说还不错。
【解决方案2】:

正如发布的那样,ILMerge 是一种选择,另一种是来自 RedGate 等的“SmartAssembly”。

所有这些都不做的是内部化原生 DLL - 这是 Windows API 的一个限制......所以任何作为原生 DLL 的依赖项都必须与 EXE 一起提供。

【讨论】:

    【解决方案3】:
     1. Select Configuration Manager and check parameter such as debug/release or x86/new.
        2.Select Release instead of debug from drop down menu near debug button(Visual studio framework).
        3. Click on build and then build yourApplicationName.
        4. Goto Your program folder->bin->release->yourApplicationName.exe.
        5. yourApplicationName.exe is ready to use.
        Thanks
    

    【讨论】:

      【解决方案4】:

      转到您的应用程序->bin->dubug->yourapplicationname.exe 它是自动生成的,但由于调试信息较少,因此发布文件夹中的 exe 比调试更快。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-04-24
        • 2014-04-18
        • 1970-01-01
        • 2016-04-19
        • 1970-01-01
        • 2015-05-01
        • 2017-03-05
        相关资源
        最近更新 更多