verifierEnumerateResource 函数 (avrfsdk.h)

枚举供调试和支持工具使用的操作系统资源。

语法

ULONG VerifierEnumerateResource(
  HANDLE                           Process,
  ULONG                            Flags,
  ULONG                            ResourceType,
  AVRF_RESOURCE_ENUMERATE_CALLBACK ResourceCallback,
  PVOID                            EnumerationContext
);

参数

Process

枚举资源的进程句柄。

如果 ResourceType 参数为 AvrfResrouceHeapAllocation,则必须使用PROCESS_VM_READ打开句柄,并PROCESS_QUERY_INFORMATION访问权限。

如果 ResourceType 为 AvrfResrouceHeapAllocation 并且 Flags 参数包含AVRF_ENUM_RESOURCES_FLAGS_SUSPEND,则必须也使用 PROCESS_SUSPEND_RESUME 标志。

Flags

如果 ResourceType 为 AvrfResourceHandleTrace,则不定义任何标志,Flags 参数的值必须为 0。

如果 ResourceType 参数为 AvrfResourceHeapAllocation,则 Flags 参数可以是 0 或以下值的组合。

含义
AVRF_ENUM_RESOURCES_FLAGS_DONT_RESOLVE_TRACES
堆分配的堆栈回溯(如果存在)不会通过 ReturnAddresses 数组复制。 这可能会加快枚举过程。
AVRF_ENUM_RESOURCES_FLAGS_SUSPEND
在执行堆分配枚举之前,进程会暂停。这可以最大程度地降低更改堆可能会影响枚举的可能性。

ResourceType

此参数可能是以下值之一:

含义
AvrfResourceHandleTrace
API 从当前进程的句柄表中枚举最近保存的句柄上的操作。
AvrfResourceHeapAllocation
API 枚举堆分配,包括堆元数据块。

ResourceCallback

由 API 调用的应用程序定义的函数。

原型对于要枚举的资源类型是不可知的。 使用将传递适合所执行的枚举类型的原型

EnumerationContext

传递回回调函数的特定于应用程序的指针。

返回值

此函数返回 系统错误代码之一。

注解

此函数没有关联的导入库。 必须使用 LoadLibraryGetProcAddress 函数动态链接到 Verifier.dll。

示例

请参阅 使用资源枚举

要求

要求
目标平台 Windows
标头 avrfsdk.h
DLL Verifier.dll

另请参阅

AVRF_HANDLEOPERATION_ENUMERATE_CALLBACK

AVRF_HEAPALLOCATION_ENUMERATE_CALLBACK

AVRF_RESOURCE_ENUMERATE_CALLBACK

资源枚举