다음을 통해 공유


DefaultDllImportSearchPathsAttribute 클래스

정의

플랫폼 호출에 대한 함수를 제공하는 DLL을 검색하는 데 사용되는 경로를 지정합니다.

public ref class DefaultDllImportSearchPathsAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Method, AllowMultiple=false)]
public sealed class DefaultDllImportSearchPathsAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Method, AllowMultiple=false)]
[System.Runtime.InteropServices.ComVisible(false)]
public sealed class DefaultDllImportSearchPathsAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Method, AllowMultiple=false)>]
type DefaultDllImportSearchPathsAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Method, AllowMultiple=false)>]
[<System.Runtime.InteropServices.ComVisible(false)>]
type DefaultDllImportSearchPathsAttribute = class
    inherit Attribute
Public NotInheritable Class DefaultDllImportSearchPathsAttribute
Inherits Attribute
상속
DefaultDllImportSearchPathsAttribute
특성

설명

어셈블리에 적용된 경우 이 특성은 기본적으로 어셈블리의 코드에서 플랫폼 호출에 대한 함수를 제공하는 모든 DLL을 검색하는 데 사용되는 경로를 지정합니다. 개별 플랫폼 호출에 적용되는 경우 이 특성은 어셈블리에 대해 지정된 기본 검색 경로를 재정의합니다.

이 특성은 절대 경로를 지정하는 모든 플랫폼 호출에 대해 무시됩니다.

Win32 LoadLibraryEx 함수가 현재 작업 디렉터리를 검색하지 못하도록 하려면 이 특성을 사용합니다. 이렇게 하면 악성 소프트웨어가 현재 작업 디렉터리에 DLL을 배치하는 공격으로부터 애플리케이션을 보호할 수 있으므로 플랫폼 호출 시 Win32 LoadLibraryEx 함수를 호출할 때 함수의 기본 검색 순서는 시스템 DLL 대신 악성 DLL을 찾습니다.

공용 언어 런타임은 다음 알고리즘에 따라 LoadLibraryEx 함수에 대한 호출을 처리합니다.

  1. 특성이 개별 플랫폼 호출에 적용되는 경우 해당 특성 인스턴스에서 지정한 값을 사용합니다.

  2. 그렇지 않은 경우 특성이 플랫폼 호출을 포함하는 어셈블리에 적용되는 경우 해당 특성 인스턴스에서 지정한 값을 사용합니다.

  3. 그렇지 않으면 어셈블리 디렉터리를 검색한 다음 플래그를 사용하여 LoadLibraryEx 함수를 호출합니다 LOAD_WITH_ALTERED_SEARCH_PATH .

이 특성은 Windows가 아닌 플랫폼이나 Mono 런타임에는 영향을 주지 않습니다.

생성자

Name Description
DefaultDllImportSearchPathsAttribute(DllImportSearchPath)

플랫폼 호출 대상 DefaultDllImportSearchPathsAttribute 을 검색할 때 사용할 경로를 지정하여 클래스의 새 인스턴스를 초기화합니다.

속성

Name Description
Paths

플랫폼 호출 중에 함수가 검색하는 경로를 지정하는 열거형 값의 LoadLibraryEx 비트 조합을 가져옵니다.

TypeId

파생 클래스에서 구현되는 경우 이 Attribute대한 고유 식별자를 가져옵니다.

(다음에서 상속됨 Attribute)

메서드

Name Description
Equals(Object)

이 인스턴스가 지정된 개체와 같은지 여부를 나타내는 값을 반환합니다.

(다음에서 상속됨 Attribute)
GetHashCode()

이 인스턴스의 해시 코드를 반환합니다.

(다음에서 상속됨 Attribute)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
IsDefaultAttribute()

파생 클래스에서 재정의되는 경우 이 인스턴스의 값이 파생 클래스의 기본값인지 여부를 나타냅니다.

(다음에서 상속됨 Attribute)
Match(Object)

파생 클래스에서 재정의되는 경우 이 인스턴스가 지정된 개체와 같은지 여부를 나타내는 값을 반환합니다.

(다음에서 상속됨 Attribute)
MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

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

이름 집합을 해당 디스패치 식별자 집합에 매핑합니다.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

인터페이스의 형식 정보를 가져오는 데 사용할 수 있는 개체의 형식 정보를 검색합니다.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

개체가 제공하는 형식 정보 인터페이스의 수를 검색합니다(0 또는 1).

(다음에서 상속됨 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

개체에 의해 노출되는 속성 및 메서드에 대한 액세스를 제공합니다.

(다음에서 상속됨 Attribute)

적용 대상

추가 정보