本文整理汇总了C#中System.AppDomain.SetAppDomainPolicy方法的典型用法代码示例。如果您正苦于以下问题:C# AppDomain.SetAppDomainPolicy方法的具体用法?C# AppDomain.SetAppDomainPolicy怎么用?C# AppDomain.SetAppDomainPolicy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.AppDomain
的用法示例。
在下文中一共展示了AppDomain.SetAppDomainPolicy方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
//引入命名空间
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);
}
}
}