Partager via


DefaultDllImportSearchPathsAttribute Classe

Définition

Spécifie les chemins d'accès utilisés pour rechercher les DLL qui fournissent des fonctions pour les appels de plateforme.

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
Héritage
DefaultDllImportSearchPathsAttribute
Attributs

Remarques

Lorsqu’il est appliqué à un assembly, cet attribut spécifie les chemins d’accès utilisés par défaut pour rechercher toute DLL qui fournit une fonction pour un appel de plateforme, dans n’importe quel code de l’assembly. Lorsqu’il est appliqué à un appel de plateforme individuel, cet attribut remplace les chemins de recherche par défaut qui ont été spécifiés pour l’assembly.

Cet attribut est ignoré pour tout appel de plateforme qui spécifie un chemin absolu.

Utilisez cet attribut pour empêcher la fonction Win32 LoadLibraryEx de rechercher dans le répertoire de travail actuel. Cela permet de protéger votre application contre les attaques dans lesquelles des logiciels malveillants placent une DLL dans le répertoire de travail actuel, de sorte que lorsqu’un appel de plateforme appelle la fonction Win32 LoadLibraryEx , l’ordre de recherche par défaut de la fonction recherche la DLL malveillante au lieu de la DLL système qu’elle était destinée à trouver.

Le Common Language Runtime gère l’appel à la fonction LoadLibraryEx selon l’algorithme suivant :

  1. Si l’attribut est appliqué à un appel de plateforme individuel, utilisez les valeurs spécifiées par cette instance de l’attribut.

  2. Sinon, si l’attribut est appliqué à l’assembly qui contient l’appel de plateforme, utilisez les valeurs spécifiées par cette instance de l’attribut.

  3. Sinon, recherchez le répertoire de l’assembly, puis appelez la LoadLibraryEx fonction avec l’indicateur LOAD_WITH_ALTERED_SEARCH_PATH .

Cet attribut n’a aucun effet sur les plateformes non-Windows ou le runtime Mono.

Constructeurs

DefaultDllImportSearchPathsAttribute(DllImportSearchPath)

Initialise une nouvelle instance de la classe DefaultDllImportSearchPathsAttribute, en spécifiant les chemins d'accès à utiliser lors de la recherche des cibles des appels de plateforme.

Propriétés

Paths

Obtient une combinaison au niveau du bit de valeurs d’énumération qui spécifient les chemins d’accès que la LoadLibraryEx fonction recherche pendant les appels de la plateforme.

TypeId

Lors de l'implémentation dans une classe dérivée, obtient un identificateur unique pour l'objet Attribute.

(Hérité de Attribute)

Méthodes

Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
GetHashCode()

Retourne le code de hachage de cette instance.

(Hérité de Attribute)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée.

(Hérité de Attribute)
Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

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

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l'accès aux propriétés et aux méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à

Voir aussi