文書番号: 2264107 - 最終更新日: 2010年7月27日 - リビジョン: 1.0 DLL 検索パス アルゴリズムを制御する新しい CWDIllegalInDllSearch レジストリ エントリについて目次概要この資料では、DLL 検索パス アルゴリズムをユーザーが制御できるようにする新しいレジストリ キー CWDIllegalInDllSearch を紹介します。完全修飾パスを指定することなく DLL が読み込まれた場合、DLL 検索パス アルゴリズムは LoadLibrary API および LoadLibraryEx API により使用されます。 詳細CWDIllegalInDllSearch レジストリ キーの動作完全修飾パスを指定することなくアプリケーションが動的に DLL を読み込むと、Windows では、一連の明確に定義されたディレクトリを検索することにより、この DLL の特定が試行されます。このような一連のディレクトリは、DLL 検索パスと呼ばれます。Windows によりディレクトリで DLL が特定されると、Windows によりその DLL が読み込まれます。Windows により DLL 検索順のディレクトリで DLL が検出されないと、Windows により DLL 読み込み操作に対してエラーが返されます。動的に DLL を読み込むために、LoadLibrary 関数と LoadLibraryEx 関数が使用されます。これら 2 つの関数の DLL 検索順は以下のとおりです。
CWDIllegalInDllSearch レジストリ キーは、以下のパスに追加することができます。
|
CWDIllegalInDllSearch の値 | LoadLibrary および LoadLibraryEx での DLL 検索パスの動作 |
---|---|
0xFFFFFFFF | 既定の DLL 検索順から現在の作業ディレクトリを削除する |
0 | 前述の既定の DLL 検索パスを使用する |
1 | 現在の作業ディレクトリが WebDAV フォルダーに設定されている場合、現在の作業ディレクトリからの DLL 読み込みをブロックする |
2 | 現在の作業ディレクトリがリモート フォルダーに設定されている場合、現在の作業ディレクトリからの DLL 読み込みをブロックする |
キーなしまたはその他の値 | 前述の既定の DLL 検索パスを使用する |
状況 2: \\remote\shareremote\share などのリモート フォルダーからアプリケーションが起動される
元に戻す
CWDIllegalInDllSearch の値 | LoadLibrary および LoadLibraryEx での DLL 検索パスの動作 |
---|---|
0xFFFFFFFF | 既定の DLL 検索順から現在の作業ディレクトリを削除する |
0 | 前述の既定の DLL 検索パスを使用する |
1 | 現在の作業ディレクトリが WebDAV フォルダーに設定されている場合、現在の作業ディレクトリからの DLL 読み込みをブロックする |
2 | 現在の作業ディレクトリがリモート フォルダーに設定されている場合、現在の作業ディレクトリからの DLL 読み込みを許可する。CWD が WebDAV 共有に設定されている場合、WebDAV 共有から読み込まれる DLL はブロックされることに注意。 |
キーなしまたはその他の値 | 前述の既定の DLL 検索パスを使用する |
状況 3: http://remote/share などの WebDav フォルダーからアプリケーションが起動される
元に戻す
CWDIllegalInDllSearch の値 | LoadLibrary および LoadLibraryEx での DLL 検索パスの動作 |
---|---|
0xFFFFFFFF | 既定の DLL 検索順から現在の作業ディレクトリを削除する |
キーなしまたはその他の値 | 前述の既定の DLL 検索パスを使用する |
例
例 1: ローカル コンピューターにインストールされているすべてのアプリケーションに対して WebDAV 共有からの DLL の読み込みを無効にする方法
- 管理者としてコンピューターにログオンします。
- レジストリ エディターを開きます。
- 次のレジストリ サブキーを見つけてクリックします。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
- [Session Manager] を右クリックし、[新規] をポイントし、[DWORD 値] をクリックします。
- 「CWDIllegalInDllSearch」と入力し、[変更] をクリックします。
- [値のデータ] ボックスに、「1」と入力し、[OK] をクリックします。
例 2: ローカル コンピューターにインストールされている特定のアプリケーションに対してのみ WebDAV 共有からの DLL の読み込みを無効にする方法
- 管理者としてコンピューターにログオンします。
- レジストリ エディターを開きます。
- 次のレジストリ サブキーを見つけてクリックします。HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\<application binary name>
- アプリケーション バイナリ名を持つキーが存在しない場合、そのようなキーを作成する必要があります。
- [<application binary name>] を右クリックし、[新規] をポイントし、[DWORD 値] をクリックします。
- 「CWDIllegalInDllSearch」と入力し、[変更] をクリックします。
- [値のデータ] ボックスに、「1」と入力し、[OK] をクリックします。
例 3: ローカル コンピューターにインストールされている特定のアプリケーションに対してのみリモート (SMB) 共有からの DLL の読み込みを無効にする方法
- 管理者としてコンピューターにログオンします。
- レジストリ エディターを開きます。
- 次のレジストリ サブキーを見つけてクリックします。HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\<application binary name>
- アプリケーション バイナリ名を持つキーが存在しない場合、そのようなキーを作成する必要があります。
- [<application binary name>] を右クリックし、[新規] をポイントし、[DWORD 値] をクリックします。
- 「CWDIllegalInDllSearch」と入力し、[変更] をクリックします。
- [値のデータ] ボックスに、「2」と入力し、[OK] をクリックします。
関連情報
LoadLibrary 関数と LoadLibraryEx 関数の詳細については、次のマイクロソフト Web サイトを参照してください。
LoadLibrary 関数の概要
(http://msdn.microsoft.com/ja-jp/library/cc429241.aspx)
LoadLibraryEx 関数の概要 (http://msdn.microsoft.com/ja-jp/library/cc429243.aspx)
LoadLibraryEx 関数の概要 (http://msdn.microsoft.com/ja-jp/library/cc429243.aspx)
この資料は以下の製品について記述したものです。
- Windows 7 Enterprise
- Windows 7 Home Basic
- Windows 7 Home Premium
- Windows 7 Professional
- Windows 7 Ultimate
- Windows Server 2008 R2 Datacenter
- Windows Server 2008 R2 Enterprise
- Windows Server 2008 R2 Standard
- Windows Server 2008 Service Pack 2 を以下の環境でお使いの場合
- Windows Server 2008 for Itanium-Based Systems
- Windows Server 2008 Datacenter
- Windows Server 2008 Enterprise
- Windows Server 2008 Standard
- Windows Web Server 2008
- Windows Vista Service Pack 2 を以下の環境でお使いの場合
- Windows Vista Business
- Windows Vista Enterprise
- Windows Vista Home Basic
- Windows Vista Home Premium
- Windows Vista Starter
- Windows Vista Ultimate
- Windows Vista Business 64-bit edition
- Windows Vista Enterprise 64-bit edition
- Windows Vista Home Basic 64-bit edition
- Windows Vista Home Premium 64-bit edition
- Windows Vista Ultimate 64-bit edition
- Windows Vista Service Pack 1 を以下の環境でお使いの場合
- Windows Vista Business
- Windows Vista Enterprise
- Windows Vista Home Basic
- Windows Vista Home Premium
- Windows Vista Starter
- Windows Vista Ultimate
- Windows Vista Business 64-bit edition
- Windows Vista Enterprise 64-bit edition
- Windows Vista Home Basic 64-bit edition
- Windows Vista Home Premium 64-bit edition
- Windows Vista Ultimate 64-bit edition
- Microsoft Windows Server 2003 Service Pack 2 を以下の環境でお使いの場合
- Microsoft Windows Server 2003, Standard Edition (32-bit x86)
- Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
- Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
- Microsoft Windows Server 2003, Web Edition
- Microsoft Windows Server 2003, Standard x64 Edition
- Microsoft Windows Server 2003, Enterprise x64 Edition
- Microsoft Windows Server 2003, Datacenter x64 Edition
- Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
- Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
- Microsoft Windows XP Professional x64 Edition
- Microsoft Windows XP Service Pack 3 を以下の環境でお使いの場合
- Microsoft Windows XP Home Edition
- Microsoft Windows XP Professional
キーワード: | kbexpertiseinter kbfix kbsecurity kbsurveynew kbinfo KB2264107 |
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"
サポート情報
その他のサポートサイト
コミュニティ
お問い合わせ
サポート技術情報の翻訳
製品別 サポート ページ |
ページ ツール |