小甲鱼 发表于 2016-5-16 15:43:29

FlushInstructionCache

注:本文档由 百日维新 翻译,小甲鱼校对。

原文链接 -> 传送门

函数功能:

FlushInstructionCache 函数用于刷新指定进程的指令缓存。


API 函数原型:

注释:_In_ 说明该参数是输入的。
BOOL WINAPI FlushInstructionCache(
_In_ HANDLEhProcess,
_In_ LPCVOID lpBaseAddress,
_In_ SIZE_TdwSize
);

参数解析:


参数 含义
hProcess 指定需要刷新指令缓存的进程句柄
lpBaseAddress 指向刷新指令缓存区的起始地址,该参数可以为 NULL
dwSize 如果 lpBaseAddress 参数不为 NULL,dwSize 参数为指令缓存区的大小,单位字节


返回值:

1. 如果函数调用成功,返回值为非 0;

2. 如果函数调用失败,返回值为 0。

若想获得更多的错误信息,请调用 GetLastError 函数。


备注:

如果在内存生成或修改代码,应用程序应该调用 FlushInstructionCache 函数。因为 CPU 不能检测指令改变,所以可能执行它缓存的旧指令。


需求:


Minimum supported client Windows xp [仅桌面应用程序]
Minimum supported server Windows 2003 服务器版 [仅桌面应用程序]
Header WinBase.h (包含于 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll


【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。
页: [1]
查看完整版本: FlushInstructionCache