HostProtectionResource Enumeration
Specifies categories of functionality potentially harmful to the host if invoked by a method or class.
This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.
Assembly: mscorlib (in mscorlib.dll)
| Member name | Description | |
|---|---|---|
| All | Exposes all host resources. | |
| ExternalProcessMgmt | Might create or destroy other processes. | |
| ExternalThreading | Creates or manipulates threads other than its own, which might be harmful to the host. | |
| MayLeakOnAbort | 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 | Exposes no host resources. | |
| SecurityInfrastructure | Exposes the security infrastructure. | |
| SelfAffectingProcessMgmt | Might exit the current process, terminating the server. | |
| SelfAffectingThreading | Manipulates threads in a way that only affects user code. | |
| SharedState | Exposes state that might be shared between threads. | |
| Synchronization | Exposes synchronization. | |
| UI | Exposes 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. // 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 ); }
Available since 2.0