次の方法で共有


LoadLibraryShim 関数

更新 : 2010 年 8 月

.NET Framework 再頒布可能パッケージに含まれる指定したバージョンの DLL を読み込みます。

この関数は、.NET Framework Version 4 では推奨されていません。 代わりに、ICLRRuntimeInfo::LoadLibrary メソッドを使用してください。

HRESULT LoadLibraryShim (
    [in]  LPCWSTR  szDllName,
    [in]  LPCWSTR  szVersion,
          LPVOID   pvReserved,
    [out] HMODULE *phModDll
);

パラメーター

  • szDllName
    [入力] .NET Framework ライブラリから読み込まれる DLL の名前を表し、ゼロで終了する文字列。

  • szVersion
    [入力] 読み込まれる DLL のバージョンを表し、ゼロで終了する文字列。 szVersion が null の場合は、指定した DLL の最新バージョン (ただし、Version 4 未満) が読み込まれます。 つまり、szVersion が null の場合、Version 4 以上のバージョンはすべて無視され、Version 4 未満のバージョンがインストールされていないときは DLL の読み込みに失敗します。 これは、.NET Framework 4 のインストールが既存のアプリケーションやコンポーネントに影響しないようにするためです。 CLR チーム ブログの「In-Proc SxS and Migration Quick Start (In-Proc SxS と移行のクイック スタート)」を参照してください。

  • pvReserved
    将来使用するために予約されています。

  • phModDll
    [出力] モジュールのハンドルへのポインター。

戻り値

このメソッドは、WinError.h で定義された標準のコンポーネント オブジェクト モデル (COM: Component Object Model) エラー コードの他、次の値も返します。

リターン コード

説明

S_OK

メソッドは正常に終了しました。

CLR_E_SHIM_RUNTIMELOAD

szDllName を読み込むには、共通言語ランタイム (CLR: Common Language Runtime) を読み込む必要がありますが、必要なバージョンの CLR を読み込むことができません。

解説

この関数は、.NET Framework 再頒布可能パッケージに含まれる DLL の読み込みに使用されます。 ユーザー生成の DLL は読み込みません。

メモメモ

.NET Framework Version 2.0 以降では、Fusion.dll を読み込むと CLR が読み込まれます。これは、Fusion.dll の関数が、ランタイムによって実装が提供されるラッパーになったためです。

必要条件

プラットフォーム: 「.NET Framework システム要件」を参照

ヘッダー : MSCorEE.h

.NET Framework のバージョン: 4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

参照

その他の技術情報

.NET Framework 1.1 および 2.0 のホスト グローバル静的関数

履歴の変更

日付

履歴

理由

2010 年 8 月

.NET Framework 4 におけるインプロセスの side-by-side の動作に関する説明を追加しました。 戻り値の一覧を追加しました。 推奨されないメソッドの代替手段に関する説明を追加しました。

コンテンツ バグ修正