Compartir a través de


IXCLRDataProcess::FollowStub2 (Método)

Dada una dirección que es un código auxiliar clR (y potencialmente estado de un seguimiento anterior), determine la siguiente dirección de ejecución en la que se comprueba si se ha salido del código auxiliar.

NOTA: Este método solo está disponible si la revisión del proceso devuelta por IXCLRDataProcess::Request es de al menos 7. Para las revisiones de proceso inferiores, los autores de llamadas deben usar el método obsoleto IXCLRDataProcess::FollowStub .

Nota:

Esta API se diseñó originalmente para su uso interno en tiempo de ejecución. Aunque ahora es compatible con el uso de terceros, se recomienda trabajar con las API ICorDebug y ICorProfiler siempre que sea posible.

Sintaxis

HRESULT FollowStub(
    [in] IXCLRDataTask *task,
    [in] ULONG32 inFlags,
    [in] CLRDATA_ADDRESS inAddr,
    [in] CLRDATA_FOLLOW_STUB_BUFFER *inBuffer,
    [out] CLRDATA_ADDRESS *outAddr,
    [out] CLRDATA_FOLLOW_STUB_BUFFER *outBuffer,
    [out] ULONG32 *outFlags
);

Parámetros

task
[in] Tarea para la que se va a seguir el código auxiliar.

inFlags
[in] Conjunto de marcas que describen cómo seguir el código auxiliar. Debe ser un valor de la CLRDataFollowStubInFlag enumeración que actualmente contiene solo un valor: CLRDATA_FOLLOW_STUB_DEFAULT (0).

inAddr
[in] Dirección del código auxiliar que se va a seguir

inBuffer
[in] Un búfer de datos opaco usado internamente para mantener el estado de caminar una cadena de códigos auxiliares. Debe ser NULL en la llamada inicial al FollowStub método .

outAddr
[out] La siguiente dirección de ejecución determinada a partir del código auxiliar.

outBuffer
[out] Un búfer de datos opaco usado internamente para mantener el estado de caminar una cadena de códigos auxiliares.

outFlags
[out] Conjunto de marcas que describen el resultado de seguir el código auxiliar. Este es un valor de la CLRDataFollowStubOutFlag enumeración. Si el valor es CLRDATA_FOLLOW_STUB_INTERMEDIATE (0), el resultado es un paso intermedio en seguir el código auxiliar y el autor de la llamada puede llamar a FollowStub de nuevo. Si el valor es CLRDATA_FOLLOW_STUB_EXIT (1), este es el final de la cadena de código auxiliar y outAddr es la dirección de ejecución al final de la cadena.

Comentarios

Se puede determinar que una dirección determinada es un código auxiliar o no mediante el uso del método que IXCLRDataProcess::GetAddressType devuelve un tipo de CLRDATA_ADDRESS_RUNTIME_MANAGED_STUB o CLRDATA_ADDRESS_RUNTIME_UNMANAGED_STUB.

El método proporcionado forma parte de la IXCLRDataProcess interfaz y corresponde a la 48ª ranura de la tabla de métodos virtuales.

Requisitos

Plataformas: Vea Requisitos de sistema. Encabezado: Ninguna Biblioteca: Ninguna versión de .NET Framework: disponible desde la versión 4.7

Consulte también