다음을 통해 공유


LoadTypeLibWithResolver 함수

형식 라이브러리를 로드하고 제공된 ITypeLibResolver 인터페이스를 사용하여 내부 참조 형식 라이브러리를 확인합니다.

구문

HRESULT LoadTypeLibWithResolver(  
    [in]  LPCOLESTR           szFile,  
    [in]  REGKIND             regkind,  
    [in]  ITypeLibResolver   *pTlbResolver,  
    [out] ITypeLib          **pptlib);  

매개 변수

szFile
[in] 형식 라이브러리의 파일 경로입니다.

regkind
[in] 형식 라이브러리가 등록되는 방식을 제어하는 REGKIND 열거 플래그입니다. 가능한 값은 다음과 같습니다.

  • REGKIND_DEFAULT: 기본 등록 동작을 사용합니다.

  • REGKIND_REGISTER: 이 형식 라이브러리를 등록합니다.

  • REGKIND_NONE: 이 형식 라이브러리를 등록하지 마세요.

pTlbResolver
[in] ITypeLibResolver 인터페이스 구현에 대한 포인터입니다.

pptlib
[out] 로드되는 형식 라이브러리에 대한 참조입니다.

Return Value

다음 표에 나열된 HRESULT 값 중 하나입니다.

반환 값 의미
S_OK 성공.
E_OUTOFMEMORY 메모리가 부족합니다.
E_POINTER 하나 이상의 포인터가 잘못되었습니다.
E_INVALIDARG 하나 이상의 인수가 잘못되었습니다.
TYPE_E_IOERROR 함수가 파일에 쓸 수 없습니다.
TYPE_E_REGISTRYACCESS 시스템 등록 데이터베이스를 열 수 없습니다.
TYPE_E_INVALIDSTATE 형식 라이브러리를 열 수 없습니다.
TYPE_E_CANTLOADLIBRARY 형식 라이브러리 또는 DLL을 로드할 수 없습니다.

설명

Tlbexp.exe(형식 라이브러리 내보내기)는 어셈블리에서 형식 라이브러리로의 변환 프로세스 중에 LoadTypeLibWithResolver 함수를 호출합니다.

이 함수는 레지스트리에 대한 최소한의 액세스로 지정된 형식 라이브러리를 로드합니다. 그런 다음, 함수는 내부적으로 참조되는 형식 라이브러리에 대해 형식 라이브러리를 검사합니다. 각 형식 라이브러리는 부모 형식 라이브러리에 로드되고 추가되어야 합니다.

참조된 형식 라이브러리를 로드하기 전에 해당 참조 파일 경로를 전체 파일 경로로 확인해야 합니다. 이는 pTlbResolver 매개 변수에 전달되는 ITypeLibResolver 인터페이스에서 제공하는 ResolveTypeLib 메서드를 통해 수행됩니다.

참조된 형식 라이브러리의 전체 파일 경로가 알려진 경우 LoadTypeLibWithResolver 함수는 참조된 형식 라이브러리를 로드하고 부모 형식 라이브러리에 추가하여 결합된 기본 형식 라이브러리를 만듭니다.

함수는 내부적으로 참조된 모든 유형 라이브러리를 확인하고 로드한 후 pptlib 매개 변수에서 기본 확인된 형식 라이브러리에 대한 참조를 반환합니다.

LoadTypeLibWithResolver 함수는 일반적으로 pTlbResolver 매개 변수에서 자체 내부 ITypeLibResolver 인터페이스 구현을 제공하는 Tlbexp.exe(형식 라이브러리 내보내기)에 의해 호출됩니다.

LoadTypeLibWithResolver를 직접 호출하는 경우 고유한 ITypeLibResolver 인터페이스 구현을 제공해야 합니다.

요구 사항

플랫폼:시스템 요구 사항을 참조하세요.

헤더: TlbRef.h

라이브러리: TlbRef.lib

.NET Framework 버전: 3.5, 3.0, 2.0

참고 항목