Teilen über


DefaultDllImportSearchPathsAttribute Klasse

Definition

Gibt die Pfade an, die bei der Suche nach DLLs verwendet werden, die Funktionen für Plattformaufrufe bereitstellen.

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
Vererbung
DefaultDllImportSearchPathsAttribute
Attribute

Hinweise

Wenn es auf eine Assembly angewendet wird, gibt dieses Attribut die Pfade an, die standardmäßig verwendet werden, um nach einer DLL zu suchen, die eine Funktion für einen Plattformaufruf bereitstellt, in einem beliebigen Code in der Assembly. Wenn es auf einen einzelnen Plattformaufruf angewendet wird, überschreibt dieses Attribut die Standardsuchpfade, die für die Assembly angegeben wurden.

Dieses Attribut wird für jeden Plattformaufruf ignoriert, der einen absoluten Pfad angibt.

Verwenden Sie dieses Attribut, um zu verhindern, dass die Win32-Funktion LoadLibraryEx das aktuelle Arbeitsverzeichnis durchsucht. Dies schützt Ihre Anwendung vor Angriffen, bei denen bösartige Software eine DLL im aktuellen Arbeitsverzeichnis platziert, sodass beim Aufrufen der Win32-Funktion LoadLibraryEx durch einen Plattformaufruf die standardmäßige Suchreihenfolge der Funktion die schädliche DLL anstelle der System-DLL findet, die sie finden sollte.

Die Common Language Runtime verarbeitet den Aufruf der LoadLibraryEx-Funktion gemäß dem folgenden Algorithmus:

  1. Wenn das Attribut auf einen einzelnen Plattformaufruf angewendet wird, verwenden Sie die von dieser Instanz des Attributs angegebenen Werte.

  2. Wenn das Attribut andernfalls auf die Assembly angewendet wird, die den Plattformaufruf enthält, verwenden Sie die von dieser Instanz des Attributs angegebenen Werte.

  3. Suchen Sie andernfalls das Assemblyverzeichnis, und rufen Sie dann die LoadLibraryEx Funktion mit dem Flag auf LOAD_WITH_ALTERED_SEARCH_PATH .

Dieses Attribut hat keine Auswirkungen auf Nicht-Windows-Plattformen oder die Mono-Runtime.

Konstruktoren

DefaultDllImportSearchPathsAttribute(DllImportSearchPath)

Initialisiert eine neue Instanz der DefaultDllImportSearchPathsAttribute-Klasse und gibt die Pfade an, die bei der Suche nach den Zielen von Plattformaufrufen zu verwenden sind.

Eigenschaften

Paths

Ruft eine bitweise Kombination von Enumerationswerten ab, die die Pfade angeben, die die Funktion während der LoadLibraryEx Plattformaufrufe durchsucht.

TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.

(Geerbt von Attribute)

Methoden

Equals(Object)

Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist.

(Geerbt von Attribute)
GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

(Geerbt von Attribute)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

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

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von Attribute)

Gilt für:

Weitere Informationen