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
- Наследование
- Атрибуты
Комментарии
При применении к сборке этот атрибут указывает пути, используемые по умолчанию для поиска любой библиотеки DLL, предоставляющей функцию для вызова платформы, в любом коде сборки. При применении к отдельному вызову платформы этот атрибут переопределяет пути поиска по умолчанию, указанные для сборки.
Этот атрибут игнорируется для любого вызова платформы, указывающего абсолютный путь.
Используйте этот атрибут, чтобы предотвратить поиск функции Win32 LoadLibraryEx
в текущем рабочем каталоге. Это помогает защитить приложение от атак, в которых вредоносное программное обеспечение помещает библиотеку DLL в текущий рабочий каталог, чтобы, когда платформа вызывает функцию Win32 LoadLibraryEx
, порядок поиска по умолчанию функции находит вредоносную библиотеку DLL вместо системной библиотеки DLL, которую он был предназначен для поиска.
Среда CLR обрабатывает вызов функции LoadLibraryEx в соответствии со следующим алгоритмом:
Если атрибут применяется к вызову отдельной платформы, используйте значения, заданные этим экземпляром атрибута.
В противном случае, если атрибут применяется к сборке, содержащей вызов платформы, используйте значения, заданные этим экземпляром атрибута.
В противном случае выполните поиск в каталоге сборки, а затем вызовите
LoadLibraryEx
функцию с флагомLOAD_WITH_ALTERED_SEARCH_PATH
.
Этот атрибут не влияет на платформы, не Windows или среду выполнения Mono.
Конструкторы
DefaultDllImportSearchPathsAttribute(DllImportSearchPath) |
Инициализирует новый экземпляр класса DefaultDllImportSearchPathsAttribute с указанием путей для поиска целевых объектов вызовов неуправляемого кода. |
Свойства
Paths |
Возвращает побитовое сочетание значений перечисления, указывающих пути, по которым функция |
TypeId |
В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute. (Унаследовано от Attribute) |
Методы
Equals(Object) |
Возвращает значение, показывающее, равен ли экземпляр указанному объекту. (Унаследовано от Attribute) |
GetHashCode() |
Возвращает хэш-код данного экземпляра. (Унаследовано от Attribute) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
IsDefaultAttribute() |
При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute) |
Match(Object) |
При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту. (Унаследовано от Attribute) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
_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) |