Compartir a través de


Uso de archivos de origen

El motor del depurador mantiene una ruta de acceso de origen, que es una lista de directorios y servidores de origen que contienen archivos de código fuente asociados a los destinos actuales. El motor del depurador puede buscar en estos directorios y servidores de origen los archivos de origen. Con la ayuda de los archivos de símbolos, el motor del depurador puede hacer coincidir líneas en los archivos de origen con ubicaciones en la memoria del destino.

Para obtener información general sobre el uso de archivos de origen con depuradores, consulte Depuración en modo de origen. Para obtener información general sobre las rutas de acceso de origen, consulte Ruta de acceso de origen. Para obtener información general sobre el uso de servidores de origen desde el motor del depurador, consulte Uso de un servidor de origen.

Ruta de acceso de origen

Para agregar un directorio o un servidor de origen a la ruta de acceso de origen, use el método AppendSourcePath. GetSourcePath devuelve toda la ruta de acceso de origen y se puede cambiar mediante SetSourcePath. Un único directorio o servidor de origen se puede recuperar de la ruta de acceso de origen mediante GetSourcePathElement.

Para buscar un archivo de origen relativo a la ruta de acceso de origen, use FindSourceFile o, para obtener opciones más avanzadas al usar servidores de origen, use FindSourceFileAndToken. FindSourceFileAndToken también se puede usar junto con GetSourceFileInformation para recuperar variables relacionadas con un archivo en un servidor de origen.

Coincidencia de archivos de origen con código en memoria

El motor del depurador proporciona tres métodos para buscar las ubicaciones de memoria que corresponden a las líneas de un archivo de origen. Para asignar una sola línea de código fuente a una ubicación de memoria, use GetOffsetByLine. Para buscar ubicaciones de memoria para más de una línea de origen o para las líneas de origen cercanas, use GetSourceEntriesByLine. El método GetSourceFileLineOffsets devolverá la ubicación de memoria de cada línea de un archivo de origen.

Para realizar la operación opuesta y buscar la línea de un archivo de origen que coincida con una ubicación en la memoria del destino, use GetLineByOffset.

Nota La relación entre las ubicaciones de memoria y las líneas de un archivo de origen no es necesariamente uno a uno. Es posible que una sola línea de código fuente se corresponda con varias ubicaciones de memoria y para que una sola ubicación de memoria corresponda a varias líneas de código fuente.