EApiCategories 枚举
描述宿主能够阻止其在部分受信任的代码中运行的功能类别。
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;
成员
成员 |
说明 |
---|---|
eAll |
指定其他 EApiCategories 字段所包括的所有托管类和成员禁止在部分受信任的代码中运行。 |
eExternalProcessMgmt |
指定允许创建、操作和销毁外部进程的托管类和成员禁止在部分受信任的代码中运行。 |
eExternalThreading |
指定允许创建、操作和销毁外部线程的托管类和成员禁止在部分受信任的代码中运行。 |
eMayLeakOnAbort |
指定可能在中止时导致内存泄露的托管类型和成员禁止在部分受信任的代码中运行。 |
eNoCategory |
指定不禁止任何托管代码类别在部分受信任的代码中运行。 |
eSecurityInfrastructure |
指定禁止部分受信任的代码使用公共语言运行时 (CLR) 安全基础结构。 |
eSelfAffectingProcessMgmt |
指定其功能可能影响宿主进程的托管类和成员禁止从部分受信任的代码中运行。 |
eSelfAffectingThreading |
指定其功能可能影响宿主进程中的线程的托管类和成员禁止从部分受信任的代码中运行。 |
eSharedState |
指定公开共享状态的托管类和成员禁止在部分受信任的代码中运行。 |
eSynchronization |
指定允许用户代码持有锁的公共语言运行时类和成员禁止在部分受信任的代码中运行。 |
eUI |
指定允许或需要人机交互的托管类和成员禁止在部分受信任的代码中运行。 |
备注
ICLRHostProtectionManager::SetProtectedCategories 方法接受一个 EApiCategories 类型的参数。
EApiCategories 枚举和 SetProtectedCategories 方法与 System.Security.Permissions.HostProtectionAttribute 托管类直接相关。 该托管类与 System.Security.Permissions.HostProtectionResource 枚举(枚举值直接与 EApiCategories 值相对应)一起使用,可标记用于公开与 EApiCategories 所描述的类别相对应的功能的托管类型和成员。
要求
**平台:**请参见 .NET Framework 系统要求。
**头文件:**MSCorEE.h
**库:**MSCorEE.dll
**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0