2

我希望将 DLL 嵌入到我的 WPF 应用程序的 EXE 中,这样我实际上只有 1 个要分发的文件,即 .EXE。所有这些东西都完全超出了我的想象,但我已经按照http://richarddingwall.name/2009/05/14/wpf-how-to-combine-mutliple-assemblies-into-a-single-中概述的步骤进行操作exe/但我仍然无法让它工作。对此有任何想法或帮助吗?只要 DLL 与 EXE 位于同一文件夹中,它就可以工作,但如果我删除 DLL,它将失败。但是,我根本不希望 DLL 存在,而是嵌入在 EXE 中。我在这里搜索了其他推荐此解决方案的帖子,但我的问题是一切都编译得很好,只是它不起作用而且我不知道如何修复它。

1) 我已将有问题的 DLL 作为资源添加到项目中,并将其构建操作设置为嵌入式资源

2)上面链接中概述的代码,我已经添加到 App.xaml.cs 文件以及使用 System.Reflection & System.IO

我应该做些什么来让它工作吗?

谢谢

剃须

4

2 回答 2

1

如果您使用的是带有 Nuget 的 Visual Studio,您只需将所需的引用设置为“复制本地 = true”并安装Fody.Costura

根据项目页面上提供的文档,您可以使用一个简单的 xml 文件稍微改进一下(如果需要,还可以整理您的构建目录)。

于 2013-05-17T16:27:19.367 回答
1

您可以使用ILMerge。我们一直使用它来将 dll 合并到可执行文件和其他库中。

这是其他人如何使用 ILMerge 来完成此任务的,因此这可能被视为重复问题。

于 2013-02-18T16:08:44.153 回答