Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Proporciona un mecanismo para enumerar los CLR en un proceso.
Sintaxis
HRESULT EnumerateCLRs (
[in] DWORD debuggeePID,
[out] HANDLE** ppHandleArrayOut,
[out] LPWSTR** ppStringArrayOut,
[out] DWORD* pdwArrayLengthOut
);
Parámetros
debuggeePID
[in] Identificador de proceso del proceso desde el que se enumerarán las CLR cargadas.
ppHandleArrayOut
[out] Puntero a una matriz que contiene identificadores de eventos que se usan para continuar con un inicio clR. No se garantiza que cada identificador de la matriz sea válido. Si es válido, el identificador se usará como evento continue-startup para el tiempo de ejecución correspondiente que se encuentra en el mismo índice de ppStringArrayOut
.
ppStringArrayOut
[out] Puntero a una matriz de cadenas que especifican rutas de acceso completas a CLR cargados en el proceso.
pdwArrayLengthOut
[out] Puntero a un DWORD que contiene la longitud del tamaño ppHandleArrayOut
igual a y pdwArrayLengthOut
.
Valor devuelto
S_OK
El número de CLR del proceso se determinó correctamente y las matrices de identificador y ruta de acceso correspondientes se rellenaron correctamente.
E_INVALIDARG
O ppHandleArrayOut
es ppStringArrayOut
null o pdwArrayLengthOut
es NULL.
E_OUTOFMEMORY
La función no puede asignar suficiente memoria para las matrices de identificador y ruta de acceso.
E_FAIL
(u otros E_
códigos de retorno)
No se pueden enumerar las CLR cargadas.
Observaciones
Para un proceso de destino identificado por debuggeePID
, la función devuelve una matriz de rutas de acceso, ppStringArrayOut
, a CLR cargados en el proceso; una matriz de identificadores de eventos, , ppHandleArrayOut
que puede contener un evento de inicio de continuación para CLR en el mismo índice; y el tamaño de las matrices, pdwArrayLengthOut
, que especifica el número de CLR que se cargan.
En el sistema operativo Windows, debuggeePID
se asigna a un identificador de proceso del sistema operativo.
Esta función asigna la memoria de ppHandleArrayOut
y ppStringArrayOut
. Para liberar la memoria asignada, debe llamar a CloseCLREnumeration Function.
Se puede llamar a esta función con ambos parámetros de matriz establecidos en NULL para devolver el recuento de CLR en el proceso de destino. A partir de este recuento, un autor de llamada puede deducir el tamaño del búfer que se creará: (sizeof(HANDLE) * count) + (sizeof(LPWSTR) * count) + (sizeof(WCHAR*) * count * MAX_PATH)
.
Requisitos
Plataformas: Consulte Sistemas operativos compatibles con .NET.
Encabezado: dbgshim.h
Biblioteca: dbgshim.dll, libdbgshim.so, libdbgshim.dylib
Versiones de .NET: Disponible desde .NET Core 2.1