Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Fornece um mecanismo para enumerar os CLRs em um processo.
Sintaxe
HRESULT EnumerateCLRs (
[in] DWORD debuggeePID,
[out] HANDLE** ppHandleArrayOut,
[out] LPWSTR** ppStringArrayOut,
[out] DWORD* pdwArrayLengthOut
);
Parâmetros
debuggeePID [em] Identificador de processo do processo do qual os CLRs carregados serão enumerados.
ppHandleArrayOut [fora] Ponteiro para uma matriz que contém identificadores de eventos que são usados para continuar uma inicialização CLR. Não é garantido que cada identificador na matriz seja válido. Se válido, o identificador será usado como evento de inicialização contínua para o runtime correspondente localizado no mesmo índice de ppStringArrayOut.
ppStringArrayOut [fora] Ponteiro para uma matriz de cadeias de caracteres que especificam caminhos completos para CLRs carregados no processo.
pdwArrayLengthOut [fora] Ponteiro para um DWORD que contém o comprimento do tamanho igual ppHandleArrayOut e pdwArrayLengthOut.
Valor de retorno
S_OK O número de CLRs no processo foi determinado com êxito e as matrizes de identificador e caminho correspondentes foram preenchidas corretamente.
E_INVALIDARG Ou ppHandleArrayOut ou ppStringArrayOut é nulo ou pdwArrayLengthOut é nulo.
E_OUTOFMEMORY A função não consegue alocar memória suficiente para as matrizes de identificador e caminho.
E_FAIL (ou outros códigos de retorno E_) Não é possível enumerar CLRs carregados.
Comentários
Para um processo de destino identificado por debuggeePID, a função retorna uma matriz de caminhos, ppStringArrayOut, para CLRs carregados no processo; uma matriz de identificadores de evento, ppHandleArrayOut, que pode conter um evento de inicialização contínua para o CLR no mesmo índice; e o tamanho das matrizes, pdwArrayLengthOut, que especifica o número de CLRs que são carregados.
No sistema operacional Windows, debuggeePID mapeia para um identificador de processo do sistema operacional.
A memória para ppHandleArrayOut e ppStringArrayOut é alocada por essa função. Para liberar a memória alocada, você deve chamar a Função CloseCLREnumeration.
Essa função pode ser chamada com ambos os parâmetros de matriz definidos como nulos para retornar a contagem de CLRs no processo de destino. Nessa contagem, um chamador pode inferir o tamanho do buffer que será criado: (sizeof(HANDLE) * count) + (sizeof(LPWSTR) * count) + (sizeof(WCHAR*) * count * MAX_PATH).
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: dbgshim.h
Biblioteca: dbgshim.dll
Versões do .NET Framework: 3.5 SP1