enumDirTree 函数 (dbghelp.h)
枚举指定目录树中指定文件的所有匹配项。
语法
BOOL IMAGEAPI EnumDirTree(
[in, optional] HANDLE hProcess,
[in] PCSTR RootPath,
[in] PCSTR InputPathName,
[out, optional] PSTR OutputPathBuffer,
[in, optional] PENUMDIRTREE_CALLBACK cb,
[in, optional] PVOID data
);
参数
[in, optional] hProcess
进程的句柄。 此句柄必须以前传递给 SymInitialize 函数。
[in] RootPath
函数应开始搜索文件的路径。
[in] InputPathName
要找到的文件的名称。 可以指定部分路径。
[out, optional] OutputPathBuffer
指向接收文件完整路径的缓冲区的指针。 如果函数失败或找不到匹配的文件,此缓冲区仍将包含找到的最后一个完整路径。
此参数是可选的,可以为 NULL。
[in, optional] cb
应用程序定义的回调函数,或 NULL。 有关详细信息,请参阅 EnumDirTreeProc。
[in, optional] data
用户定义的数据或 NULL。 此值将传递给回调函数。
返回值
如果函数成功,则返回值为 TRUE。
如果函数失败,则返回值为 FALSE。 若要检索扩展的错误信息,请调用 GetLastError。
备注
如果注册 SymRegisterCallbackProc64 回调函数,则可以取消搜索。 对于每个文件操作, EnumDirTree 使用 CBA_DEFERRED_SYMBOL_LOAD_CANCEL 调用此回调函数。 如果回调函数返回 TRUE, 则 EnumDirTree 将取消搜索。
所有 DbgHelp 函数(例如此函数)都是单线程的。 因此,从多个线程调用此函数可能会导致意外行为或内存损坏。 若要避免这种情况,必须将多个线程中的所有并发调用同步到此函数。
若要调用此函数的 Unicode 版本,请定义 DBGHELP_TRANSLATE_TCHAR。
要求
目标平台 | Windows |
标头 | dbghelp.h |
Library | Dbghelp.lib |
DLL | Dbghelp.dll |
可再发行组件 | DbgHelp.dll 6.0 或更高版本 |