【发布时间】:2012-09-06 17:08:47
【问题描述】:
我最近尝试这样做但没有成功,我希望有新的反馈来帮助我澄清问题。
我的项目具有以下结构。
参考资料:
- DocX.dll
- PDFClown.dll
- PdfSharp-WPF.dll
- PdfSharp.Charting-WPF.dll
类:
- IDocument
- PDF : IDocument
- PdfParser
- 文本:IDocument
- 字:IDocument
输出:
- TextReader.dll
我尝试使用以下方法合并:
ILMerge:重复类型“Project.IDocument”
带有 /internalize 标志的 ILMerge:重复类型“Project.IDocument”
带有 /allowDup 标志的 ILMerge:向空间名称添加一个随机数(例如 Project79859.Pdf),外部项目引用表示即使更改后也找不到空间名称。
Jeffrey Richter 方法 (http://bit.ly/bDPbh3):似乎只适用于可执行输出。
欢迎任何想法或建议。提前致谢。
PS。目标项目像现在一样工作,未嵌入 5 个 dll,但规范只需要 1 个 dll。
【问题讨论】:
-
在所有这些程序集中搜索
IDocument的定义。我假设有人试图变得聪明并使用相同的命名空间/类型名称组合来使包装器透明。 -
我想您正试图将 4 个引用合并到您的输出程序集中?你能显示你正在使用的完整的 ilmerge 命令吗?