This documentation is archived and is not being maintained.

AppDomain.SetAppDomainPolicy Method

Establishes the security policy level for this application domain.

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

<SecurityPermissionAttribute(SecurityAction.LinkDemand, ControlDomainPolicy := True)> _
Public Sub SetAppDomainPolicy ( _
	domainPolicy As PolicyLevel _
Dim instance As AppDomain 
Dim domainPolicy As PolicyLevel



Type: System.Security.Policy.PolicyLevel

The security policy level.




domainPolicy is Nothing.


The security policy level has already been set.


The operation is attempted on an unloaded application domain.

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.

Imports System
Imports System.Threading
Imports System.Security
Imports System.Security.Policy
Imports System.Security.Permissions

Class ADSetAppDomainPolicy

   Overloads Shared Sub Main(args() As String)
      ' Create a new application domain. 
      Dim domain As AppDomain = System.AppDomain.CreateDomain("MyDomain")

      ' Create a new AppDomain PolicyLevel. 
      Dim polLevel As PolicyLevel = PolicyLevel.CreateAppDomainLevel()
      ' Create a new, empty permission set. 
      Dim permSet As 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.

      ' Try to execute the assembly. 
         ' This will throw a PolicyException if the executable tries to 
         ' access any resources like file I/Q or window creation.
      Catch e As PolicyException
         Console.WriteLine("PolicyException: {0}", e.Message)
      End Try

   End Sub 'Main
End Class 'ADSetAppDomainPolicy

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

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0