Método ICorProfilerInfo2::GetClassIDInfo2
Obtém o módulo de pai e os metadados token a classe genérica especificada, a ClassID de sua classe pai e o ClassID para cada argumento de tipo, se presente, da classe.
HRESULT GetClassIDInfo2(
[in] ClassID classId,
[out] ModuleID *pModuleId,
[out] mdTypeDef *pTypeDefToken,
[out] ClassID *pParentClassId,
[in] ULONG32 cNumTypeArgs,
[out] ULONG32 *pcNumTypeArgs,
[out] ClassID typeArgs[]);
Parâmetros
classId
[in] A ID de classe para os quais informações serão recuperadas.pModuleId
[out] Ponteiro para a ID do módulo da classe pai.pTypeDefToken
[out] Ponteiro para o token de metadados da classe.pParentClassId
[out] Ponteiro para a ID da classe pai.cNumTypeArgs
[in] O dimensionar do typeArgs matriz.pcNumTypeArgs
[out] Ponteiro para o número total de elementos disponível.typeArgs
[out] Uma matriz de ClassID valores, cada um deles representa a ID de um argumento de tipo da classe. Quando o método retorna, typeArgs irá conter algumas ou todas as disponível ClassID valores.
Comentários
The GetClassIDInfo2 método é semelhante do ICorProfilerInfo::GetClassIDInfo método, mas GetClassIDInfo2 Obtém informações adicionais sobre um tipo genérico.
O código do criador de perfil pode telefonar ICorcriador de perfilInfo::GetModuleMetaData para obter um metadados interface para um determinado módulo. Token de metadados que é retornado para o local referenciado por pTypeDefToken em seguida, pode ser usado para acessar os metadados da classe.
Depois de GetClassIDInfo2 Retorna, você deve verificar que o typeArgs buffer era grande o suficiente para conter todos os ClassID valores. Para fazer isso, comparar o valor que pcNumTypeArgs aponta para com o valor das cNumTypeArgs parâmetro. If pcNumTypeArgs aponta para um valor que seja maior que cNumTypeArgs, alocar uma maior typeArgs buffer, atualização cNumTypeArgs com a novo e maior dimensionar e telefonar GetClassIDInfo2 novamente.
Como alternativa, você pode primeiro telefonar GetClassIDInfo2 com um comprimento zero typeArgs buffer para obter o dimensionar do buffer correto. Você pode então conjunto o typeArgs dimensionar do buffer para o valor retornado nos pcNumTypeArgs e telefonar GetClassIDInfo2 novamente.
Para obter mais informações sobre essas duas abordagens, consulte Buffers alocados chamador da API de criação de perfil.
Requisitos
Plataformas: See Requisitos de sistema do .NET framework.
Cabeçalho: CorProf.idl
Biblioteca: CorGuids.lib
.NET Framework Versions: 3.5 SP1, 3,5, 3.0 SP1, 3.0, 2.0 SP1, 2.0