是否可以使用LD_PRELOAD替代系统函数,如Linux和Solaris上的可能
例如通过设置环境variables:LD_PRELOAD = / path / to / mymalloc.so
我会有我的replacemalloc函数,而不是已经安装在系统库中的C运行时。 系统DLL中的所有其他function将正常运行。
Microsoft Research有一个名为Detours的库,它允许您截取Win32 API调用。
Detours是一个用于在x86,x64和IA64机器上检测任意Win32函数的库。 Detours通过重写目标函数的内存代码来拦截Win32函数。 Detours软件包还包含用于将任意DLL和数据段(称为有效载荷)附加到任何Win32二进制文件的实用程序。
如果Detours(如前所述)不是一个选项 – 那么你可以看看WinAPI覆盖 。 积极的配合。 请注意,只有32位版本可用。