Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

HostProtectionResource Enumeration

Specifies categories of functionality potentially harmful to the host if invoked by a method or class.

Namespace: System.Security.Permissions
Assembly: mscorlib (in mscorlib.dll)

[SerializableAttribute] 
[FlagsAttribute] 
[ComVisibleAttribute(true)] 
public enum HostProtectionResource
/** @attribute SerializableAttribute() */ 
/** @attribute FlagsAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public enum HostProtectionResource
SerializableAttribute 
FlagsAttribute 
ComVisibleAttribute(true) 
public enum HostProtectionResource

 Member nameDescription
AllExposes all host resources. 
ExternalProcessMgmtMight create or destroy other processes. 
ExternalThreadingCreates or manipulates threads other than its own, which might be harmful to the host. 
MayLeakOnAbortMight cause a resource leak on termination, if not protected by a safe handle or some other means of ensuring the release of resources. 
NoneExposes no host resources. 
SecurityInfrastructureExposes the security infrastructure. 
SelfAffectingProcessMgmtMight exit the current process, terminating the server. 
SelfAffectingThreadingManipulates threads in a way that only affects user code. 
SharedStateExposes state that might be shared between threads. 
SynchronizationExposes synchronization. 
UIExposes the user interface. 

This enumeration is used by the HostProtectionAttribute attribute.

The following code example shows the use of the HostProtectionResource enumeration with the HostProtectionAttribute attribute. This 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.
[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);
}

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

Show:
© 2014 Microsoft