HostProtectionResource 枚举

定义

注意

Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}

指定若由方法或类调用,可能对宿主有害的功能的类别。Specifies categories of functionality potentially harmful to the host if invoked by a method or class.

此枚举有一个 FlagsAttribute 属性,允许按位组合成员值。

public enum class HostProtectionResource
[System.Flags]
public enum HostProtectionResource
[System.Flags]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum HostProtectionResource
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum HostProtectionResource
[<System.Flags>]
type HostProtectionResource = 
[<System.Flags>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type HostProtectionResource = 
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type HostProtectionResource = 
Public Enum HostProtectionResource
继承
HostProtectionResource
属性

字段

All 511

公开所有宿主资源。Exposes all host resources.

ExternalProcessMgmt 4

可以创建或销毁其他进程。Might create or destroy other processes.

ExternalThreading 16

创建或操作除本身以外的其他线程可能对宿主有害。Creates or manipulates threads other than its own, which might be harmful to the host.

MayLeakOnAbort 256

如果没有安全句柄的保护,或者没有其他方法来确保资源的释放,也许将在终止时导致资源泄漏。Might cause a resource leak on termination, if not protected by a safe handle or some other means of ensuring the release of resources.

None 0

不公开宿主资源。Exposes no host resources.

SecurityInfrastructure 64

公开安全性基础结构。Exposes the security infrastructure.

SelfAffectingProcessMgmt 8

可以退出当前进程,终止服务器。Might exit the current process, terminating the server.

SelfAffectingThreading 32

以只影响用户代码的方式操作线程。Manipulates threads in a way that only affects user code.

SharedState 2

公开可能在线程间共享的状态。Exposes state that might be shared between threads.

Synchronization 1

公开同步。Exposes synchronization.

UI 128

公开用户界面。Exposes the user interface.

示例

下面的代码示例演示如何将 HostProtectionResource 枚举与属性一起使用 HostProtectionAttributeThe following code example shows the use of the HostProtectionResource enumeration with the HostProtectionAttribute attribute. 此示例是为类提供的更大示例的一部分 HostProtectionAttributeThis example is part of a larger example provided for the HostProtectionAttribute class.

// Use the enumeration flags to indicate that this method exposes shared state and 
// self-affecting process management.
// Either of the following attribute statements can be used to set the 
// resource flags.
// Exit the sample when an exception is thrown.

[HostProtection(SharedState=true,SelfAffectingProcessMgmt=true)]
[HostProtection(Resources=HostProtectionResource::SharedState|
HostProtectionResource::SelfAffectingProcessMgmt)]
static void Exit( String^ Message, int Code )
{
   Console::WriteLine( "\nFAILED: {0} {1}", Message, Code );
   Environment::ExitCode = Code;
   Environment::Exit( Code );
}
// Use the enumeration flags to indicate that this method exposes 
// shared state and self-affecting process management.
// Either of the following attribute statements can be used to set the
// resource flags.
[HostProtectionAttribute(SharedState = true, 
    SelfAffectingProcessMgmt = true)]
[HostProtectionAttribute(Resources = HostProtectionResource.SharedState |
     HostProtectionResource.SelfAffectingProcessMgmt)]
private static void Exit(string Message, int Code)
{
    // Exit the sample when an exception is thrown.
    Console.WriteLine("\nFAILED: " + Message + " " + Code.ToString());
    Environment.ExitCode = Code;
    Environment.Exit(Code);
}
' Use the enumeration flags to indicate that this method exposes 
' shared state and self-affecting process management.
' Either of the following attribute statements can be used to set the 
' resource flags.
<HostProtectionAttribute(SharedState := True, _
    SelfAffectingProcessMgmt := True), _
    HostProtectionAttribute( _
    Resources := HostProtectionResource.SharedState Or _
    HostProtectionResource.SelfAffectingProcessMgmt)> _
Private Shared Sub [Exit](ByVal Message As String, ByVal Code As Integer)

    ' Exit the sample when an exception is thrown.
    Console.WriteLine((ControlChars.Lf & "FAILED: " & Message & " " & _
        Code.ToString()))
    Environment.ExitCode = Code
    Environment.Exit(Code)
End Sub

注解

此枚举由 HostProtectionAttribute 属性使用。This enumeration is used by the HostProtectionAttribute attribute.

适用于