如何卸载 RtlInstallFunctionTableCallback?
How to uninstall RtlInstallFunctionTableCallback?
RtlInstallFunctionTableCallback 函数的反转是什么?
我一直在研究它以避免瞬时 JIT 数学表达式相当慢 RtlAddFunctionTable/RtlDeleteFunctionTable,但我找不到卸载回调的方法...
我怀疑(否则未使用且明显多余的)TableIdentifier 参数可能与此有关,但似乎没有记录。
此外,尚不完全清楚回调 si 返回的 table 是否实际上是动态添加的(馈送到 RtlAddFunctionTable,因此稍后应使用 RtlDeleteFunctionTable 清理)或者它是否只是暂时使用。
正如 Hans Passant 在评论中所说,答案在 RtlDeleteFunctionTable 文档中
NTSYSAPI BOOLEAN RtlDeleteFunctionTable( PRUNTIME_FUNCTION
FunctionTable );
FunctionTable
A pointer to an array of function entries that were previously passed
to RtlAddFunctionTable or an identifier previously passed to
RtlInstallFunctionTableCallback. For a definition of the
PRUNTIME_FUNCTION type, see WinNT.h.
RtlInstallFunctionTableCallback 函数的反转是什么?
我一直在研究它以避免瞬时 JIT 数学表达式相当慢 RtlAddFunctionTable/RtlDeleteFunctionTable,但我找不到卸载回调的方法...
我怀疑(否则未使用且明显多余的)TableIdentifier 参数可能与此有关,但似乎没有记录。
此外,尚不完全清楚回调 si 返回的 table 是否实际上是动态添加的(馈送到 RtlAddFunctionTable,因此稍后应使用 RtlDeleteFunctionTable 清理)或者它是否只是暂时使用。
正如 Hans Passant 在评论中所说,答案在 RtlDeleteFunctionTable 文档中
NTSYSAPI BOOLEAN RtlDeleteFunctionTable( PRUNTIME_FUNCTION FunctionTable );
FunctionTable
A pointer to an array of function entries that were previously passed to RtlAddFunctionTable or an identifier previously passed to RtlInstallFunctionTableCallback. For a definition of the PRUNTIME_FUNCTION type, see WinNT.h.