Compartir a través de


Función SearchTreeForFile (dbghelp.h)

Busca en un árbol de directorios un archivo especificado.

Sintaxis

BOOL IMAGEAPI SearchTreeForFile(
  [in]  PCSTR RootPath,
  [in]  PCSTR InputPathName,
  [out] PSTR  OutputPathBuffer
);

Parámetros

[in] RootPath

Ruta de acceso donde la función debe comenzar a buscar el archivo.

[in] InputPathName

Archivo para el que buscará la función. Puede usar una ruta de acceso parcial.

[out] OutputPathBuffer

Puntero a un búfer que recibe la ruta de acceso completa al archivo que se encuentra. Esta cadena no se modifica si el valor devuelto es FALSE.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es TRUE.

Si se produce un error en la función, el valor devuelto es FALSE. Para recuperar información de error extendida, llame a GetLastError.

Comentarios

La función busca el archivo especificado por el parámetro InputPathName a partir de la ruta de acceso especificada en el parámetro RootPath . La profundidad máxima de ruta de acceso permitida en rootPath es de 32 directorios. Cuando la función encuentra el archivo en el árbol de directorios, coloca la ruta de acceso completa al archivo en el búfer especificado por el parámetro OutputPathBuffer . El sistema de archivos subyacente especifica el orden de la búsqueda del subdirectorio.

La búsqueda se puede cancelar si registra una función de devolución de llamada SymRegisterCallbackProc64 . Para cada directorio buscado, SearchTreeForFile llama a esta función de devolución de llamada con CBA_DEFERRED_SYMBOL_LOAD_CANCEL. Si la función de devolución de llamada devuelve TRUE, SearchTreeForFile cancela la búsqueda.

Esta función desencadena un evento CBA_DEFERRED_SYMBOL_LOAD_CANCEL por directorio buscado. Esto permite al autor de la llamada cancelar la búsqueda.

Todas las funciones DbgHelp, como esta, son un único subproceso. Por lo tanto, es probable que las llamadas desde más de un subproceso a esta función producirán un comportamiento inesperado o daños en la memoria. Para evitarlo, debe sincronizar todas las llamadas simultáneas de más de un subproceso a esta función.

Para llamar a la versión Unicode de esta función, defina DBGHELP_TRANSLATE_TCHAR.

Requisitos

   
Plataforma de destino Windows
Encabezado dbghelp.h
Library Dbghelp.lib
Archivo DLL Dbghelp.dll
Redistribuible DbgHelp.dll 5.1 o posterior

Consulte también

Funciones de DbgHelp