【问题标题】:How to use ilMerge to merge dll into an exe file? [duplicate]如何使用 ilMerge 将 dll 合并为 exe 文件? [复制]
【发布时间】:2013-01-27 19:57:07
【问题描述】:

可能重复:
Merging .dll with .exe

好的,所以...我在一个路径中拥有 ilmerge 的所有文件,以及 .exe (CabalMain.exe) 和 dll (crckd.dll)。 C:\Program Files (x86)\Microsoft\ILMerge

我 shift>右键单击文件夹并打开命令提示符。 由于我想合并我输入的两个:

    C:\Program Files (x86)\Microsoft\ILMerge>C:\Program Files (x86)\Microsoft\ILMerg
e\ilmerge C:\Program Files (x86)\Microsoft\ILMerge\Cabalmain.exe C:\Program File
s (x86)\Microsoft\ILMerge\crckd.dll /out:C:\Program Files (x86)\Microsoft\ILMerg
e

(我相信这是合并的正确过程) 我收到了

C:\Program Files (x86)\Microsoft\ILMerge>C:\Program Files (x86)\Microsoft\ILMerg
e\ilmerge C:\Program Files (x86)\Microsoft\ILMerge\Cabalmain.exe C:\Program File
s (x86)\Microsoft\ILMerge\crckd.dll /out:C:\Program Files (x86)\Microsoft\ILMerg
e

如果我还没有把它送出去,那么在这方面我完全是个白痴;简单的说明将不胜感激。 提前致谢!

【问题讨论】:

  • 我在今天之前已经看过这个问题(以及对此的回答或评论)。发生了什么?
  • 是的,这是今天流行的注射剂。我只需要知道,或者我更想知道,如何将 .dll 注入 .exe,以及我的策略是否正确。

标签: dll merge cmd exe ilmerge


【解决方案1】:

由于您现在已经复制了 ilmerge 的程序文件夹中的所有内容(这是不明智的,并且在重复的问题中被建议反对)正确的命令(来自 ilmerge 文件夹)应该是:

ilmerge cabalmain.exe crckd.dll /out:%userprofile%\cabalmainmerged.exe

如果没有显示错误,您可以输入start %userprofile%,然后在打开的资源管理器窗口中您应该找到 cabalmainmerged.exe

“无法加载程序集”表示您尝试合并的 exe 或 dll 文件未复制到正确的文件夹中。如果 exe 或 dll 之一依赖于其他程序集,则它们都必须位于同一文件夹中。

更明智的做法是创建一个文件夹 c:\merge 并复制该文件夹中的所有相关文件。然后启动命令提示符并

c:

cd\合并

然后

"C:\Program Files (x86)\Microsoft\ILMerge\ilmerge" "yourexe.exe" "your1stdll.dll" /out:mergedexe.exe

【讨论】:

  • 雷内,这发生了。合并期间发生异常:ILMerge.Merge: 无法从 t \Microsoft\ILMerge\cabalmain.exe' 加载程序集。在 ILMerging.ILMerge.Main(String[] args) 处的 ILMerging.ILMerge.Merge() 处跳过 a
  • 你很确定 cabalmain.exe 和 ilmerge 在同一个文件夹中?
  • imgur.com/jgYTVdf 是的,你可以看到他们都是Q_Q。
  • 看来你运气不好。 cabalmain.exe 可能取决于您没有的另一个 dll。
猜你喜欢
  • 2011-10-26
  • 2011-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-05
  • 1970-01-01
相关资源
最近更新 更多