如何使用外部 .dll 创建 .exe 文件?
How to create an .exe file with external .dll?
我已经尝试了几乎所有在网上找到的方法来解决这个问题,但它似乎不起作用!
我使用 wpf 从 visual studio 2013 项目创建了一个 .exe 文件。我希望此文件创建 pdf,因此我添加了有关 itextsharp 的 .dll 作为参考。
如果我将我的 .exe 文件保存在与 itextsharp 的 .dll 相同的目录中,一切正常。但是当我尝试 运行 外部的 .exe 时,程序崩溃了。
我试过使用 ILMerge,我读到合并 .exe 和 .dll 非常好,但是当我双击一个新创建的 .exe 文件时没有任何反应。
我在命令 window 中写的命令曾经在 ILMerge 文件夹中是:
ilmerge C:\Users\Utente\Desktop\PDFWriter.exe C:\Users\Utente\Desktop\itextsharp.dll /out:C:\Users\Utente\Desktop\merged.exe /target:winexe /targetplatform:"v4,C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5"
感谢您的帮助!
使用Fody.Cosura 项目进行合并。比 ILMerge 更好用。
您需要做的就是在您的项目中安装 nuget 包:
PM> Install-Package Costura.Fody
你已经大功告成了。您可以调整 configuration,但这并不总是必需的,因为只需安装软件包即可完成大部分工作。
我已经尝试了几乎所有在网上找到的方法来解决这个问题,但它似乎不起作用! 我使用 wpf 从 visual studio 2013 项目创建了一个 .exe 文件。我希望此文件创建 pdf,因此我添加了有关 itextsharp 的 .dll 作为参考。 如果我将我的 .exe 文件保存在与 itextsharp 的 .dll 相同的目录中,一切正常。但是当我尝试 运行 外部的 .exe 时,程序崩溃了。
我试过使用 ILMerge,我读到合并 .exe 和 .dll 非常好,但是当我双击一个新创建的 .exe 文件时没有任何反应。
我在命令 window 中写的命令曾经在 ILMerge 文件夹中是:
ilmerge C:\Users\Utente\Desktop\PDFWriter.exe C:\Users\Utente\Desktop\itextsharp.dll /out:C:\Users\Utente\Desktop\merged.exe /target:winexe /targetplatform:"v4,C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5"
感谢您的帮助!
使用Fody.Cosura 项目进行合并。比 ILMerge 更好用。
您需要做的就是在您的项目中安装 nuget 包:
PM> Install-Package Costura.Fody
你已经大功告成了。您可以调整 configuration,但这并不总是必需的,因为只需安装软件包即可完成大部分工作。