다음을 통해 공유


ICorProfilerInfo2::GetClassFromTokenAndTypeArgs 메서드

지정된 메타데이터 토큰과 형식 인수의 ClassID 값을 사용하여 형식의 ClassID를 가져옵니다.

HRESULT GetClassFromTokenAndTypeArgs(
    [in] ModuleID moduleID,
    [in] mdTypeDef typeDef,
    [in] ULONG32 cTypeArgs,
    [in, size_is(cTypeArgs)] ClassID typeArgs[],
    [out] ClassID* pClassID);

매개 변수

  • moduleID
    [in] 형식이 있는 모듈의 ID입니다.

  • typeDef
    [in] 형식을 참조하는 mdTypeDef 메타데이터 토큰입니다.

  • cTypeArgs
    [in] 지정된 형식에 대한 형식 매개 변수의 수입니다. 제네릭이 아닌 형식의 경우 이 값은 0이어야 합니다.

  • typeArgs
    [in] 형식의 인수인 각 ClassID 값의 배열입니다. cTypeArgs가 0으로 설정되어 있으면 typeArgs 값은 NULL일 수 있습니다.

  • pClassID
    [out] 지정된 형식의 ClassID에 대한 포인터입니다.

설명

GetClassFromTokenAndTypeArgs 메서드를 mdTypeDef 대신 mdTypeRef와 함께 호출하면 예기치 않은 결과가 발생할 수 있으므로 호출자에서는 전달할 때 mdTypeRefmdTypeDef로 확인해야 합니다.

형식이 아직 로드되지 않은 경우 GetClassFromTokenAndTypeArgs를 호출하면 로딩이 트리거됩니다. 이는 많은 컨텍스트에서 위험한 작업입니다. 예를 들어, 모듈이나 다른 형식을 로드하는 동안 이 메서드를 호출하면 런타임에 순환 로드를 시도할 때 무한 루프가 발생할 수 있습니다.

일반적으로 GetClassFromTokenAndTypeArgs는 사용하지 않는 것이 좋습니다. 프로파일러에서 특정 형식의 이벤트를 원하는 경우 해당 형식의 ModuleID 및 mdTypeDef를 저장하고 ICorProfilerInfo2::GetClassIDInfo2를 사용하여 지정된 ClassID가 원하는 형식인지 확인해야 합니다.

요구 사항

플랫폼: .NET Framework 시스템 요구 사항 참조

헤더: CorProf.idl, CorProf.h

라이브러리: CorGuids.lib

.NET Framework 버전: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

참고 항목

참조

ICorProfilerInfo 인터페이스

ICorProfilerInfo2 인터페이스