AppDomain.SetAppDomainPolicy メソッド
アセンブリ: mscorlib (mscorlib.dll 内)

- domainPolicy

例外の種類 | 条件 |
---|---|
ArgumentNullException | domainPolicy が null 参照 (Visual Basic では Nothing) です。 |
PolicyException | セキュリティ ポリシー レベルが既に設定されています。 |
AppDomainUnloadedException | 操作が、アンロードされたアプリケーション ドメインで試行されています。 |


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. 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/Q or window creation. domain.ExecuteAssembly("Assemblies\MyWindowsExe.exe") Catch e As PolicyException Console.WriteLine("PolicyException: {0}", e.Message) End Try AppDomain.Unload(domain) End Sub 'Main End Class 'ADSetAppDomainPolicy
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); } } }
using namespace System; using namespace System::Threading; using namespace System::Security; using namespace System::Security::Policy; using namespace System::Security::Permissions; int main() { // 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 = gcnew PermissionSet( PermissionState::None ); // Add permission to execute code to the permission set. permSet->AddPermission( gcnew SecurityPermission( SecurityPermissionFlag::Execution ) ); // Give the policy level's root code group a new policy statement based // on the new permission set. polLevel->RootCodeGroup->PolicyStatement = gcnew 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 ); }


Windows 98, Windows 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
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


_AppDomain.SetAppDomainPolicy メソッド
アセンブリ: mscorlib (mscorlib.dll 内)

Sub SetAppDomainPolicy ( _ domainPolicy As PolicyLevel _ )
Dim instance As _AppDomain Dim domainPolicy As PolicyLevel instance.SetAppDomainPolicy(domainPolicy)
- domainPolicy


Windows 98, Windows 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
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からAppDomain.SetAppDomainPolicyを検索する場合は、下記のリンクをクリックしてください。

- AppDomain.SetAppDomainPolicyのページへのリンク