LockClrVersion 関数
プロセス内で使用する共通言語ランタイム (CLR: Common Language Runtime) のバージョンを、CLR を明示的に初期化する前にホストが決定できるようにします。
この関数は、.NET Framework Version 4 では推奨されていません。
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.h
ライブラリ: MSCorEE.dll
.NET Framework のバージョン: 4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0