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.
AppDomain.SetAppDomainPolicy Method
.NET Framework 3.0
Establishes the security policy level for this application domain.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Assembly: mscorlib (in mscorlib.dll)
Call this method before an assembly is loaded into the AppDomain in order for the security policy to have effect.
The following example demonstrates how to use the SetAppDomainPolicy method to set the security policy level of an application domain.
using System; using System.Threading; using System.Security; using System.Security.Policy; using System.Security.Permissions; namespace AppDomainSnippets { class ADSetAppDomainPolicy { static void Main(string[] args) { // Create a new application domain. AppDomain domain = System.AppDomain.CreateDomain("MyDomain"); // Create a new AppDomain PolicyLevel. PolicyLevel polLevel = PolicyLevel.CreateAppDomainLevel(); // Create a new, empty permission set. PermissionSet permSet = new PermissionSet(PermissionState.None); // Add permission to execute code to the permission set. permSet.AddPermission (new SecurityPermission(SecurityPermissionFlag.Execution)); // Give the policy level's root code group a new policy statement based // on the new permission set. polLevel.RootCodeGroup.PolicyStatement = new PolicyStatement(permSet); // Give the new policy level to the application domain. domain.SetAppDomainPolicy(polLevel); // Try to execute the assembly. try { // This will throw a PolicyException if the executable tries to // access any resources like file I/O or tries to create a window. domain.ExecuteAssembly("Assemblies\\MyWindowsExe.exe"); } catch(PolicyException e) { Console.WriteLine("PolicyException: {0}", e.Message); } AppDomain.Unload(domain); } } }
- SecurityPermission to use this method. Associated enumeration: SecurityPermissionFlag.ControlPolicy. Security action: LinkDemand.
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.