/SYMBOLS
/SYMBOLS
Esta opción muestra la tabla de símbolos COFF. Las tablas de símbolos existen en todos los archivos de objeto. Una tabla de símbolos COFF aparece en un archivo de imagen solo si está vinculada a /DEBUG.
A continuación se muestra una descripción de la salida de /SYMBOLS. Puede encontrar información adicional sobre el significado de la salida /SYMBOLS buscando en winnt.h (IMAGE_SYMBOL y IMAGE_AUX_SYMBOL) o documentación de COFF.
Dado el siguiente volcado de memoria de ejemplo:
Dump of file main.obj
File Type: COFF OBJECT
COFF SYMBOL TABLE
000 00000000 DEBUG notype Filename | .file
main.cpp
002 000B1FDB ABS notype Static | @comp.id
003 00000000 SECT1 notype Static | .drectve
Section length 26, #relocs 0, #linenums 0, checksum 722C964F
005 00000000 SECT2 notype Static | .text
Section length 23, #relocs 1, #linenums 0, checksum 459FF65F, selection 1 (pick no duplicates)
007 00000000 SECT2 notype () External | _main
008 00000000 UNDEF notype () External | ?MyDump@@YAXXZ (void __cdecl MyDump(void))
String Table Size = 0x10 bytes
Summary
26 .drectve
23 .text
Comentarios
En la descripción siguiente, para las líneas que comienzan con un número de símbolo, se describen las columnas que tienen información relevante para los usuarios:
El primer número de tres dígitos es el índice o número de símbolos.
Si la tercera columna contiene SECTx, el símbolo se define en esa sección del archivo de objeto. Pero si aparece UNDEF, no se define en ese objeto y se debe resolver en otro lugar.
La quinta columna (Estática, Externa) indica si el símbolo solo está visible dentro de ese objeto o si es público (visible externamente). Un símbolo estático, _sym, no estaría vinculado a un símbolo público _sym; serían dos instancias diferentes de funciones denominadas _sym.
La última columna de una línea numerada es el nombre del símbolo, tanto decorado como sin codificar.
En los archivos producidos con la opción del compilador /GL, solo está disponible la opción /HEADERS DUMPBIN.