Método IDebugAdvanced2::GetSymbolInformation (dbgeng.h)
El método GetSymbolInformation devuelve información especificada sobre un símbolo.
Sintaxis
HRESULT GetSymbolInformation(
[in] ULONG Which,
[in] ULONG64 Arg64,
[in] ULONG Arg32,
[out, optional] PVOID Buffer,
[in] ULONG BufferSize,
[out, optional] PULONG InfoSize,
[out, optional] PSTR StringBuffer,
[in] ULONG StringBufferSize,
[out, optional] PULONG StringSize
);
Parámetros
[in] Which
Especifica el fragmento de información que se va a devolver. Que puede tomar uno de los valores de la tabla siguiente.
Valor | Información devuelta |
---|---|
DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE | Devuelve el nombre del archivo de código fuente y el número de línea de un punto de interrupción especificado. El número de línea se devuelve a Buffer como un ULONG. El nombre de archivo se devuelve a StringBuffer. |
DEBUG_SYMINFO_IMAGEHLP_MODULEW64 |
Devuelve una estructura IMAGEHLP_MODULEW64 que describe un módulo especificado. Para obtener más información sobre esta estructura, consulte el tema IMAGEHLP_MODULE64 en la documentación de la biblioteca de ayuda de depuración (dbghelp.chm).
No se devuelve ninguna cadena y StringBuffer, StringBufferSize y StringSize deben establecerse en cero. |
DEBUG_SYMINFO_GET_SYMBOL_NAME_BY_OFFSET_AND_TAG_WIDE | Devuelve el nombre Unicode del símbolo especificado por la ubicación en la memoria y el tipo de etiqueta PDB. El nombre se devuelve a Buffer. StringBuffer no se usa. |
DEBUG_SYMINFO_GET_MODULE_SYMBOL_NAMES_AND_OFFSETS | Devuelve una lista de nombres de símbolos y desplazamientos para los símbolos del módulo especificado con el tipo de etiqueta PDB especificado. Los desplazamientos se devuelven como una matriz de valores de ULONG a Buffer. Los nombres se devuelven en el mismo orden que los desplazamientos a StringBuffer. Algunos nombres pueden contener ceros incrustados porque las anotaciones pueden tener nombres de varias partes; por lo tanto, cada nombre termina con dos caracteres NULL. |
[in] Arg64
Especifica un argumento de 64 bits. Este parámetro tiene las siguientes interpretaciones en función del valor de Cuál:
DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE
ignorado.
DEBUG_SYMINFO_IMAGEHLP_MODULEW64
Dirección base del módulo cuya descripción se solicita.
DEBUG_SYMINFO_GET_SYMBOL_NAME_BY_OFFSET_AND_TAG_WIDE
Especifica la dirección en la memoria del destino del símbolo cuyo nombre se solicita.
DEBUG_SYMINFO_GET_MODULE_SYMBOL_NAMES_AND_OFFSETS
Especifica el módulo cuyos símbolos se solicitan. Arg64 es una ubicación dentro de la asignación de memoria del módulo.
[in] Arg32
Especifica un argumento de 32 bits. Este parámetro tiene las siguientes interpretaciones en función del valor de Cuál:
DEBUG_SYMINFO_BREAKPOINT_SOURCE_LINE
Identificador del punto de interrupción del motor del punto de interrupción deseado.
DEBUG_SYMINFO_IMAGEHLP_MODULEW64
Establecer en cero.
DEBUG_SYMINFO_GET_SYMBOL_NAME_BY_OFFSET_AND_TAG_WIDE
Clasificación PDB del símbolo. Arg32 debe ser uno de los valores de la enumeración SymTagEnum definida en Dbghelp.h. Para más información, consulte la documentación de PDB.
DEBUG_SYMINFO_GET_MODULE_SYMBOL_NAMES_AND_OFFSETS
Clasificación PDB del símbolo. Arg32 debe ser uno de los valores de la enumeración SymTagEnum definida en Dbghelp.h. Para más información, consulte la documentación de PDB.
[out, optional] Buffer
Recibe la información de símbolo solicitada. El tipo de los datos devueltos depende del valor de Which. Si Buffer es NULL, no se devuelve esta información.
[in] BufferSize
Especifica el tamaño, en bytes, del búfer de búfer.
[out, optional] InfoSize
Si este método devuelve S_OK, InfoSize recibe el tamaño, en bytes, de la información de símbolos devuelta a Buffer. Si este método devuelve S_FALSE, el búfer proporcionado no es lo suficientemente grande y InfoSize recibe el tamaño de búfer necesario. Si InfoSize es NULL, no se devuelve esta información.
[out, optional] StringBuffer
Recibe la cadena solicitada. La interpretación de esta cadena depende del valor de Cuál. Si StringBuffer es NULL, esta información no se devuelve.
[in] StringBufferSize
Especifica el tamaño, en caracteres, del búfer de cadenas StringBuffer.
[out, optional] StringSize
Recibe el tamaño, en caracteres, de la cadena devuelta a StringBuffer. Si StringSize es NULL, no se devuelve esta información.
Valor devuelto
Este método también puede devolver valores de error. Consulte Valores devueltos para obtener más detalles.
Código devuelto | Descripción |
---|---|
|
Método realizado correctamente. |
|
Método realizado correctamente. Sin embargo, la información no cabería en el búfer de búfer o la cadena no cabería en el búfer StringBuffer, por lo que la información o el nombre se truncaron. |
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | dbgeng.h (incluir Dbgeng.h) |