更新 : 2007 年 11 月
プロセス内で使用する共通言語ランタイム (CLR: Common Language Runtime) のバージョンを、CLR を明示的に初期化する前にホストが決定できるようにします。
HRESULT LockClrVersion (
[in] FLockClrVersionCallback hostCallback,
[in] FLockClrVersionCallback *pBeginHostSetup,
[in] FLockClrVersionCallback *pEndHostSetup
);
パラメータ
hostCallback
[入力] 初期化後に CLR が呼び出す関数。pBeginHostSetup
[入力] 初期化が開始されていることを CLR に通知するためにホストが呼び出す関数。pEndHostSetup
[入力] 初期化が完了したことを CLR に通知するためにホストが呼び出す関数。
戻り値
このメソッドは、WinError.h で定義された標準の COM エラー コードの他、次の値も返します。
リターン コード |
説明 |
---|---|
S_OK |
メソッドは正常に終了しました。 |
E_INVALIDARG |
1 つ以上の引数が null です。 |
解説
ホストは、CLR を初期化する前に LockClrVersion を呼び出します。LockClrVersion は 3 つのパラメータを受け取ります。これらはすべて FLockClrVersionCallback 型のコールバックです。この型は次のように定義されています。
typedef HRESULT ( __stdcall *FLockClrVersionCallback ) ();
ランタイムの初期化では、次の処理が行われます。
ホストが、CorBindToRuntimeEx、または他のランタイム初期化関数の 1 つを呼び出します。または、ホストは COM オブジェクトのアクティベーションを使用してランタイムを初期化することもできます。
ランタイムが、hostCallback パラメータによって指定された関数を呼び出します。
その後、hostCallback によって指定された関数が、次の一連の呼び出しを行います。
pBeginHostSetup パラメータによって指定された関数。
CorBindToRuntimeEx (または別のランタイム初期化関数)。
pEndHostSetup パラメータによって指定された関数。
pBeginHostSetup から pEndHostSetup までのすべての呼び出しは、シングル スレッドまたはシングル ファイバの同じ論理スタックで行う必要があります。このスレッドは、hostCallback が呼び出されるスレッドとは別のスレッドにすることができます。
必要条件
プラットフォーム : 「.NET Framework システム要件」を参照
ヘッダー : MSCorEE.idl
ライブラリ : MSCorEE.dll
.NET Framework のバージョン : 3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0