Tag: ilmerge

使用ILMerge合并.dll文件无法正常工作

首先,我不确定这是否是ILMerge的问题,但我无法将.dll文件合并到我的应用程序中。 我在命令行上尝试了这个: ilmerge /target:winexe /out:test.exe MyApp.exe lib1.dll lib2.dll lib3.dll 我收到以下错误,我不知道这意味着什么: MyApp的元数据中报告了错误。 与D:\ C#\ source \ bin \ ReleaseMyApp.exe关联的pdb已过期。 我顺便使用最新版本(2.10.526.0),但是我不能让它工作,我真的需要一些帮助。 上述错误意味着什么,我该如何解决?

是否可以删除.NET中未使用的代码/程序集?

我的应用程序中有一个控件库,对于我正在开发的应用程序类型来说有点大。 该库超过2Mb,我几乎没有使用它的function,我会说我使用它的function的5%到10%。 反正有没有删除我的应用程序从未使用过的库代码? PS:这个库不是由我开发的,它不是开源的(你可以买代码)。 编辑:我发布这个因为我虽然这可以使用ILMerge实现,这是有人在过去对我说的…我试图使用ILMerge但是没有用,我不确定我是否正确使用它。 ..

ilmerge是否优化了输出?

我有许多DLL使用Microsoft的ILMERGE.EXE工具合并。 所有的DLL都没有选中“优化我的代码”。 在尝试调试Web应用程序中的代码时,模块屏幕(在Visual Studio中)显示dll已经过优化。 在尝试调试应用程序的某些部分时,这显然会导致问题。 有没有办法使用ILMERGE构建DLL,而不优化代码?

了解IlMerge – 如何使用所有与之关联的dll打包可执行文件

我知道我不是第一个在Stack Overflow上提出这个问题的人,我相信我不会是最后一个。 但是,在花了几个小时研究如何做到这一点然后实际尝试做之后,我已经准备好放弃了。 我有一个构建为可执行文件的.NET Framework 4,C#,WinForms应用程序。 我依赖许多dll。 dll分为多个类别。 我编写的库没有自己的依赖 我编写的库依赖于我编写的其他库 我编写的库依赖于第三方dll 第三方独自一人 第三方dll与其他dll有自己的依赖关系 因此,在编译我的应用程序之后,我有一个带有可执行文件和大约15个dll的目录。 我想将所有dll打包成一个可执行文件,这样我就可以简单地分发一个可执行文件。 我知道IlMerge是通常建议使用的应用程序,但我很好奇是否有更容易使用的东西,更直观,适用于WinForms和WPF。

如何将文件合并到单个可执行文件或减少分布式文件的数量

我有我的WPF应用程序的输出文件: de\ es\ fr\ hu\ it\ pt-BR\ Resources\ ro\ ru\ sv\ zh-Hans\ FileHelpers.dll FileHelpers.DataLink.dll FileHelpers.ExcelStorage.dll Interop.Excel.dll Interop.Office.dll Ionic.Zip.dll wpftoolkit.dll Xceed.Wpf.AvalonDock.dll Xceed.Wpf.AvalonDock.Themes.Aero.dll Xceed.Wpf.AvalonDock.Themes.Metro.dll Xceed.Wpf.AvalonDock.Themes.VS2010.dll Xceed.Wpf.DataGrid.dll Xceed.Wpf.Toolkit.dll MyApp.Common.Extensions.dll MyApp.Common.Helpers.dll MyApp.Common.Types.Attributes.dll MyApp.Security.dll MyApp.Wpf.Controls.dll MyApp.exe MyApp.exe.config licence.key error.log 从MyApp开始的一切都是由我自己开发的,其他一切由3dParty完成我想分发我的应用程序,但为了做到这一点,我想合并所有可能的东西,以分发最小的文件数量。 我试图使用ilmerge将我的文件合并为单个文件但是收到错误: ILMerge.Merge: ERROR!!: Duplicate type ‘XamlGeneratedNamespace.GeneratedInternal TypeHelper’ found in assembly ‘Xceed.Wpf.DataGrid’. 关于我在这里找到的那​​个问题的答案xeed错误原因我正在阅读ilmerge限制和汇编作为资源Jeffrey Richter 所以我发现杰弗里里希特解决方案非常有用。 但我无法将其应用于我的程序,因为程序集上没有“Build Action”属性。 为了实现我的目标,我能做些什么吗?

使用Ilmerge在.NET中组合多个dll

请问如何使用ILMerge将多个dll组合成一个。

在ILMerge之后,BinaryFormatter.Deserialize“无法找到程序集”

我有一个带有引用的dll的C#解决方案(也是具有相同.Net版本的C#)。 当我构建解决方案并运行生成的exe时,没有合并exe和引用的dll,一切正常。 现在我想将这些合并到一个exe中。 我运行ILMerge,一切似乎都正常。 我尝试执行exe,它似乎运行正常,直到它尝试反序列化引用的DLL中定义的对象。 using (Stream fstream = new FileStream(file_path, FileMode.Open)) { BinaryFormatter bf = new BinaryFormatter(); return bf.Deserialize(fstream) as ControlledRuleCollection; // throws unable to find assembly exception } 可能有一些ILMerge选项我在这里丢失了吗?

是否可以仅使用ILMerge合并依赖项的子集?

我正在尝试一些探索性的事情: 假设我有一个库“coolproject”,它依赖于one.dll , two.dll和three.dll 。 我想使用ILMerge将coolproject与one.dll和two.dll结合使用,但不是three.dll 。 在合并完成后,我应该有coolproject.dll和three.dll 。 无论我打算使用coolproject.dll我都必须引用three.dll 这有可能吗? 每当我尝试它,我得到。 Unresolved assembly reference not allowed: three 。 我通过设置“Copy Local”= false来省略three.dll 。 [编辑]: 执行如下: ILMerge /targetplatform:v2 /log /internalize /out:bin\coolproject.dll obj\Debug\coolproject.dll C:\Users\Nick\Projects\test\bin\one.dll C:\Users\Nick\Projects\test\bin\two.dll

ILMerge +本地化资源程序集

我正在使用ILMerge从包含1个exe和2个资源dll的项目中创建单个程序集应用程序: \ BIN \调试\ test.exe的 \ BIN \调试\ NL-BE \ test.resources.dll \ BIN \调试\ FR-FR \ test.resources.dll 这是一个简单的测试项目,有1个表单(Form1.cs),所以没什么特别的。 我的目标是使用工作资源管理器创建一个单独的程序集应用程序(我已阅读ILMerge和本地化资源程序集以及单程序集多语言Windows窗体部署(ILMerge和附属程序集/本地化) – 可能吗?有关如何执行的信息这个)。 编译项目后,我使用以下命令行参数运行ILMerge: ilmerge /log:test.txt /target:winexe /copyattrs /allowdup /out:test_merged.exe “C:\projectdir\bin\Debug\test.exe” “C:\projectdir\bin\Debug\fr-FR\test.resources.dll” “C:\projectdir\bin\Debug\nl-BE\test.resources.dll” 如果我用Reflector检查合并程序集的内容,我在资源树节点下看到以下内容: test.Form1.fr-FR.resources test.Form1.fr-FR.resources test.Form1.resources test.Properties.Resources.resources 而不是fr-FR和nl-BE资源,我有2倍的fr-FR资源。 这是因为资源dll的名称相同吗? 结果是我只能在运行时获取fr-FR资源。 有任何想法吗 ? 更新(日志文件内容):(注意:二进制文件以“loc_”为前缀,为了清楚起见,我在之前的post中将它们删除了) ILMerge version 2.10.526.0 Copyright (C) Microsoft Corporation 2004-2006. All rights reserved. ILMerge /log:loc_test.txt […]

是否有适用于Mono的ILMerge等效工具?

我正在寻找一个开源工具,将多个.NET程序集合并到一个程序集中。