Funzione EnumerateCLRs
Fornisce un meccanismo per l'enumerazione di CLR in un processo.
Sintassi
HRESULT EnumerateCLRs (
[in] DWORD debuggeePID,
[out] HANDLE** ppHandleArrayOut,
[out] LPWSTR** ppStringArrayOut,
[out] DWORD* pdwArrayLengthOut
);
Parametri
debuggeePID
[in] Identificatore del processo da cui verranno enumerati i CLR caricati.
ppHandleArrayOut
[out] Puntatore a una matrice contenente handle di evento usati per continuare un avvio di CLR. Non è garantito che ogni handle nella matrice sia valido. Se valido, l'handle deve essere usato come evento di avvio-continuazione per il rispettivo runtime presente nello stesso indice di ppStringArrayOut
.
ppStringArrayOut
[out] Puntatore a una matrice di stringhe che specificano i percorsi completi di CLR caricati nel processo.
pdwArrayLengthOut
[out] Puntatore a un valore DWORD che contiene la lunghezza di ppHandleArrayOut
e pdwArrayLengthOut
con dimensioni identiche.
Valore restituito
S_OK
Il numero di CLR nel processo è stato determinato correttamente e le matrici di percorsi e di handle corrispondenti sono state riempite correttamente.
E_INVALIDARG
ppHandleArrayOut
o ppStringArrayOut
è Null oppure pdwArrayLengthOut
è Null.
E_OUTOFMEMORY
La funzione non è in grado di allocare memoria sufficiente per le matrici di percorsi e di handle.
E_FAIL
(o altri codici E_
restituiti)
Impossibile enumerare i CLR caricati.
Osservazioni:
Per un processo di destinazione identificato da debuggeePID
, la funzione restituisce una matrice di percorsi (ppStringArrayOut
) ai CLR caricati nel processo, una matrice di handle di evento (ppHandleArrayOut
) che può contenere un evento di avvio-continuazione del CLR per lo stesso indice, oltre alle dimensioni delle matrici (pdwArrayLengthOut
) che specificano il numero di CLR caricati.
Nel sistema operativo Windows debuggeePID
esegue il mapping a un identificatore di processo del sistema operativo.
La memoria per ppHandleArrayOut
e ppStringArrayOut
viene allocata da questa funzione. Per liberare la memoria allocata, è necessario chiamare la Funzione CloseCLREnumeration.
Questa funzione può essere chiamata con entrambi i parametri di matrice impostati su Null per restituire il conteggio di CLR nel processo di destinazione. Da questo conteggio un chiamante è in grado di dedurre le dimensioni del buffer che verrà creato: (sizeof(HANDLE) * count) + (sizeof(LPWSTR) * count) + (sizeof(WCHAR*) * count * MAX_PATH)
.
Requisiti
Piattaforme: vedere Sistemi operativi supportati da .NET.
Intestazione: dbgshim.h
Libreria: dbgshim.dll, libdbgshim.so, libdbgshim.dylib
Versioni .NET: disponibili a partire da .NET Core 2.1
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per