DefaultDllImportSearchPathsAttribute クラス

定義

プラットフォーム呼び出しに関数を提供する DLL の検索に使用するパスを指定します。Specifies the paths that are used to search for DLLs that provide functions for platform invokes.

public ref class DefaultDllImportSearchPathsAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Method, AllowMultiple=false)]
[System.Runtime.InteropServices.ComVisible(false)]
public sealed class DefaultDllImportSearchPathsAttribute : Attribute
type DefaultDllImportSearchPathsAttribute = class
    inherit Attribute
Public NotInheritable Class DefaultDllImportSearchPathsAttribute
Inherits Attribute
継承
DefaultDllImportSearchPathsAttribute
属性

注釈

アセンブリに適用される場合、この属性は、アセンブリ内の任意のコードで、プラットフォーム呼び出しの関数を提供する DLL を検索するために既定で使用されるパスを指定します。When applied to an assembly, this attribute specifies the paths that are used by default to search for any DLL that provides a function for a platform invoke, in any code in the assembly. 個々のプラットフォーム呼び出しに適用された場合、この属性は、アセンブリに対して指定された既定の検索パスをオーバーライドします。When applied to an individual platform invoke, this attribute overrides the default search paths that were specified for the assembly.

絶対パスを指定するプラットフォーム呼び出しでは、この属性は無視されます。This attribute is ignored for any platform invoke that specifies an absolute path.

この属性を使用して、 LoadLibraryEx Win32 関数が現在の作業ディレクトリを検索できないようにします。Use this attribute to prevent the Win32 LoadLibraryEx function from searching the current working directory. これにより、悪意のあるソフトウェアによって現在の作業ディレクトリに DLL が配置される攻撃からアプリケーションを保護することがLoadLibraryExできます。これにより、プラットフォーム呼び出しで Win32 関数が呼び出されるときに、関数の既定の検索順序によって、代わりに悪意のある dll が検出されます。検索対象となったシステム DLL の。This helps protect your application from attacks in which malicious software places a DLL in the current working directory, so that when a platform invoke calls the Win32 LoadLibraryEx function, the function's default search order finds the malicious DLL instead of the system DLL it was intended to find.

共通言語ランタイムは、次のアルゴリズムに従って、 LoadLibraryEx関数への呼び出しを処理します。The common language runtime handles the call to the LoadLibraryEx function according to the following algorithm:

  1. 属性が個々のプラットフォーム呼び出しに適用される場合は、その属性のインスタンスによって指定された値を使用します。If the attribute is applied to an individual platform invoke, use the values specified by that instance of the attribute.

  2. それ以外の場合、プラットフォーム呼び出しを含むアセンブリに属性が適用されている場合は、その属性のインスタンスによって指定された値を使用します。Otherwise, if the attribute is applied to the assembly that contains the platform invoke, use the values specified by that instance of the attribute.

  3. それ以外の場合は、アセンブリディレクトリを検索LoadLibraryExし、 LOAD_WITH_ALTERED_SEARCH_PATHフラグを指定して関数を呼び出します。Otherwise, search the assembly directory and then call the LoadLibraryEx function with the LOAD_WITH_ALTERED_SEARCH_PATH flag.

コンストラクター

DefaultDllImportSearchPathsAttribute(DllImportSearchPath)

プラットフォームの対象の検索を呼び出すときに使用するパスを指定して、DefaultDllImportSearchPathsAttribute クラスの新しいインスタンスを初期化します。Initializes a new instance of the DefaultDllImportSearchPathsAttribute class, specifying the paths to use when searching for the targets of platform invokes.

プロパティ

Paths

LoadLibraryEx 関数がプラットフォーム呼び出しの間に検索するパスを指定する列挙値のビットごとの組み合わせを取得します。Gets a bitwise combination of enumeration values that specify the paths that the LoadLibraryEx function searches during platform invokes.

TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。When implemented in a derived class, gets a unique identifier for this Attribute.

(継承元 Attribute)

メソッド

Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。Returns a value that indicates whether this instance is equal to a specified object.

(継承元 Attribute)
GetHashCode()

このインスタンスのハッシュ コードを返します。Returns the hash code for this instance.

(継承元 Attribute)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(継承元 Attribute)
Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(継承元 Attribute)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)

明示的なインターフェイスの実装

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

一連の名前を対応する一連のディスパッチ識別子に割り当てます。Maps a set of names to a corresponding set of dispatch identifiers.

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。Retrieves the type information for an object, which can be used to get the type information for an interface.

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。Provides access to properties and methods exposed by an object.

(継承元 Attribute)

適用対象

こちらもご覧ください