1

在 gcc 中,当我们指定-Wl,时--wrap=function_name,它会将所有对“function_name”的调用替换为“__wrap_function_name”,并期望用户提供“__wrap_function_name”的定义。它将原始方法重命名为“__real_function_name”。

这有助于挂钩源代码中的任何函数,当然我们可以根据需要调用真实方法。

C# 编译器/链接器中是否有类似的选项?我正在尝试覆盖托管 dll 中的一些函数。我有那个 dll 的源代码。我不能使用任何可用的模拟框架,因为我的方法是内部的和非虚拟的。

4

1 回答 1

0

不,我一般不知道 C# 或 Microsoft 实现中的任何此类功能。

如果你已经有了源代码,你能不能不适当地改变它?听起来您希望它比实际更具可扩展性 - 所以自己添加可扩展性挂钩。

于 2012-12-24T16:55:03.747 回答