.NET外挂系列:5. harmony 中补丁参数的有趣玩法(下) - 一线码农

💡 原文中文,约3800字,阅读约需9分钟。
📝

内容提要

本文介绍了Harmony库的补丁参数,如__result、__args和___fields,展示了如何通过这些参数修改方法的返回值和请求URL。示例代码演示了如何拦截DateTime.Now和HttpClient.SendAsync方法,改变其输出和请求地址,体现了Harmony的强大功能。

🎯

关键要点

  • 本文介绍了Harmony库的补丁参数,包括__result、__args和___fields。
  • __result参数用于获取和修改被注入方法的返回值。
  • 示例代码展示了如何通过__result修改DateTime.Now的输出。
  • __args参数可以以object[]形式访问原方法的所有参数。
  • 示例代码展示了如何通过__args拦截HttpClient.SendAsync方法并修改请求URL。
  • Harmony支持同名参数法,可以直接接收与底层方法签名一致的参数。
  • 当参数为internal类型时,可以使用__n索引法访问参数。
  • ___fields参数用于读写当前实例的私有字段。
  • 示例代码展示了如何使用___fields为无名线程赋予默认名称。
➡️

继续阅读