다음을 통해 공유


LockClrVersion 함수

CLR(공용 언어 런타임)을 명시적으로 초기화하기 전에 프로세스에서 사용할 CLR 버전을 호스트가 결정할 수 있도록 합니다.

.NET Framework 버전 4에서는 이 함수가 더 이상 사용되지 않습니다.

HRESULT LockClrVersion (
    [in] FLockClrVersionCallback   hostCallback,
    [in] FLockClrVersionCallback  *pBeginHostSetup,
    [in] FLockClrVersionCallback  *pEndHostSetup
);

매개 변수

  • hostCallback
    [in] 초기화할 때 CLR에서 호출할 함수입니다.

  • pBeginHostSetup
    [in] 초기화가 시작되고 있음을 CLR에 알리기 위해 호스트에서 호출할 함수입니다.

  • pEndHostSetup
    [in] 초기화가 완료되었음을 CLR에 알리기 위해 호스트에서 호출할 함수입니다.

반환 값

이 메서드에서는 다음 값뿐만 아니라 WinError.h에 정의된 표준 COM 오류 코드도 반환합니다.

반환 코드

설명

S_OK

메서드가 성공적으로 완료되었습니다.

E_INVALIDARG

하나 이상의 인수가 null입니다.

설명

호스트는 CLR을 초기화하기 전에 LockClrVersion를 호출합니다. LockClrVersion에는 세 개의 매개 변수가 사용되는데 이러한 매개 변수는 모두 FLockClrVersionCallback 형식의 콜백입니다. 이 형식은 다음과 같이 정의됩니다.

typedef HRESULT ( __stdcall *FLockClrVersionCallback ) ();

공용 언어 런타임을 초기화할 때 다음 단계가 진행됩니다.

  1. 호스트에서 CorBindToRuntimeEx 또는 다른 런타임 초기화 함수 중 하나를 호출합니다. 호스트에서 COM 개체 활성화를 사용하여 런타임을 초기화할 수도 있습니다.

  2. 런타임에서 hostCallback 매개 변수로 지정한 함수를 호출합니다.

  3. hostCallback으로 지정한 함수는 다음과 같은 순서로 호출 작업을 수행합니다.

pBeginHostSetup부터 pEndHostSetup까지의 모든 호출은 논리 스택이 같은 단일 스레드 또는 파이버에서 실행되어야 합니다. 이 스레드는 hostCallback이 호출된 스레드와 다를 수 있습니다.

요구 사항

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

헤더: MSCorEE.h

라이브러리: MSCorEE.dll

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

참고 항목

기타 리소스

.NET Framework 1.1 및 2.0 호스팅 전역 정적 함수