【问题标题】:How to create a program that converts 1 dll file into another dll file?如何创建将 1 个 dll 文件转换为另一个 dll 文件的程序?
【发布时间】:2022-01-05 05:51:19
【问题描述】:

所以我想制作一个不包含任何游戏代码但仍安装完整修改后的 dll 的 mod 安装程序。正式游戏的每个人总是从相同的 dll 开始(用 C# 和统一编写)。

我最初的想法是使用 ILspy 进行反编译(因为我们只能访问 .dll)并重新编译,但这不起作用(构建错误)。我曾考虑过使用 winMerge 之类的东西来保存 .dll 之间的更改,但不是 100% 确定如何使用它,我的最终想法是将整个二进制文件从存储的文件转换为正常数字并找出两个文件之间的差异。

有人知道解决这个问题的最佳方法是什么吗?

【问题讨论】:

  • 如果 ILSpy 产生无效代码并且原始程序集没有被混淆,这是 ILSpy 中的一个错误。你提交错误报告了吗?
  • 它发生在所有反编译器中,它是游戏中内置的高级 3D 图形渲染器之一,会产生无效的反编译代码

标签: c# file dll filesystems


【解决方案1】:

我的好运来自ildasm / patch / ilasm。你可以用Mono.Cecil 做同样的事情。如果原始 dll 没有本机代码,即使面对混淆的 dll,它也是相当自动化的。

【讨论】:

  • 您好,感谢您的帮助!您对如何将 Mono.Cecil 用于此类事情并创建脚本以放入安装程序有任何提示吗?
  • @danMan771:非常大。在你完成一次之前,我无法真正给你太多。制作一个玩具示例,然后我们可以讨论它。
猜你喜欢
  • 2011-02-22
  • 1970-01-01
  • 1970-01-01
  • 2012-01-04
  • 2012-02-01
  • 2013-11-11
  • 1970-01-01
  • 2012-11-21
  • 1970-01-01
相关资源
最近更新 更多