Partager via


EApiCategories, énumération

Décrit les catégories de fonctionnalités dont l’hôte peut empêcher l’exécution dans du code partiellement approuvé.

Syntaxe

typedef enum {  
    eNoCategory               = 0,  
    eSynchronization          = 0x1,  
    eSharedState              = 0x2,  
    eExternalProcessMgmt      = 0x4,  
    eSelfAffectingProcessMgmt = 0x8,  
    eExternalThreading        = 0x10,  
    eSelfAffectingThreading   = 0x20,  
    eSecurityInfrastructure   = 0x40,  
    eUI                       = 0x80,  
    eMayLeakOnAbort           = 0x100,  
    eAll                      = 0x1ff  
} EHostProtectionCategories;  

Membres

Membre Description
eAll Spécifie que toutes les classes et les membres managés qui sont couverts par d’autres champs EApiCategories sont empêchés de s’exécuter dans du code partiellement approuvé.
eExternalProcessMgmt Spécifie que les classes et les membres managés qui permettent la création, la manipulation et la destruction de processus externes sont empêchés de s’exécuter dans du code partiellement approuvé.
eExternalThreading Spécifie que les classes et les membres managés qui permettent la création, la manipulation et la destruction de threads externes sont empêchés de s’exécuter dans du code partiellement approuvé.
eMayLeakOnAbort Spécifie que les types et les membres managés qui pourraient potentiellement faire l’objet d’une fuite de mémoire en cas d’abandon sont empêchés de s’exécuter dans du code partiellement approuvé.
eNoCategory Spécifie qu’aucune catégorie de code managé n’est empêchée de s’exécuter dans du code partiellement approuvé.
eSecurityInfrastructure Spécifie que l’utilisation de l’infrastructure de sécurité du Common Language Runtime (CLR) par du code partiellement approuvé doit être bloquée.
eSelfAffectingProcessMgmt Spécifie que les classes et les membres managés dont les fonctionnalités peuvent affecter le processus hébergé sont empêchés de s’exécuter dans du code partiellement approuvé.
eSelfAffectingThreading Spécifie que les classes et les membres managés dont les fonctionnalités peuvent affecter des threads du processus hébergé sont empêchés de s’exécuter dans du code partiellement approuvé.
eSharedState Spécifie que les classes et les membres managés qui exposent un état partagé sont empêchés de s’exécuter dans du code partiellement approuvé.
eSynchronization Spécifie que les classes et les membres managés du Common Language Runtime qui permettent au code utilisateur de détenir des verrous sont empêchés de s’exécuter dans du code partiellement approuvé.
eUI Spécifie que les classes et les membres managés qui permettent ou nécessitent une interaction humaine sont empêchés de s’exécuter dans du code partiellement approuvé.

Remarques

La méthode ICLRHostProtectionManager::SetProtectedCategories prend un paramètre de type EApiCategories.

L’énumération EApiCategories et la méthode SetProtectedCategories sont directement liées à la classe managée System.Security.Permissions.HostProtectionAttribute. La classe managée est utilisée avec l’énumération System.Security.Permissions.HostProtectionResource, dont les valeurs correspondent directement aux valeurs de EApiCategories, pour marquer les types et les membres managés qui exposent des fonctionnalités correspondant aux catégories décrites par EApiCategories.

Configuration requise

Plateformes : Consultez Configuration requise.

En-tête : MSCorEE.h

Bibliothèque : MSCorEE.dll

Versions de .NET Framework : disponible depuis la version 2.0

Voir aussi