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

Dim instance As ReflectionPermission Dim target As IPermission Dim returnValue As Boolean returnValue = instance.IsSubsetOf(target)
戻り値
現在のアクセス許可が、指定したアクセス許可のサブセットである場合は true。それ以外の場合は false。


現在のアクセス許可で指定される操作の集合が、指定したアクセス許可に完全に含まれる場合、現在のアクセス許可オブジェクトは指定したアクセス許可オブジェクトのサブセットです。たとえば、C:\example.txt へのアクセス権を表すアクセス許可は、C:\ へのアクセス権を表すアクセス許可のサブセットです。このメソッドが true を返す場合、現在のアクセス許可が保護されたリソースに対して表すアクセス権は、指定したアクセス許可が表すアクセス権と同じか、またはそのサブセットです

Private Function IsSubsetOfDemo() As Boolean Dim returnValue As Boolean = True Dim reflection1, reflection2 As ReflectionPermissionFlag Dim reflectionPerm1, reflectionPerm2 As ReflectionPermission Dim reflectionGen1 As New ReflectionGenerator() Dim reflectionGen2 As New ReflectionGenerator() reflectionGen1.ResetIndex() While reflectionGen1.CreateReflection(reflection1) reflectionPerm1 = New ReflectionPermission(reflection1) reflectionGen2.ResetIndex() Console.WriteLine("********************************************************" & ControlChars.Lf) While reflectionGen2.CreateReflection(reflection2) reflectionPerm2 = New ReflectionPermission(reflection2) Try If reflectionPerm1.IsSubsetOf(reflectionPerm2) Then Console.WriteLine((reflectionPerm1.Flags.ToString() & " is a subset of " _ & reflectionPerm2.Flags.ToString())) Else Console.WriteLine((reflectionPerm1.Flags.ToString() & " is not a subset of " _ & reflectionPerm2.Flags.ToString())) End If Catch e As Exception Console.WriteLine(("An exception was thrown for subset :" & reflectionPerm1.ToString() _ & ControlChars.Lf & reflectionPerm2.ToString() & ControlChars.Lf & e.ToString())) returnValue = False End Try ContinueWhile2: End While ContinueWhile1: End While Return returnValue End Function 'IsSubsetOfDemo
private bool IsSubsetOfDemo() { bool returnValue = true; ReflectionPermissionFlag reflection1, reflection2; ReflectionPermission reflectionPerm1, reflectionPerm2; ReflectionGenerator reflectionGen1 = new ReflectionGenerator(); ReflectionGenerator reflectionGen2 = new ReflectionGenerator(); reflectionGen1.ResetIndex(); while (reflectionGen1.CreateReflection(out reflection1)) { reflectionPerm1 = new ReflectionPermission(reflection1); reflectionGen2.ResetIndex(); Console.WriteLine("********************************************************\n"); while (reflectionGen2.CreateReflection(out reflection2)) { reflectionPerm2 = new ReflectionPermission(reflection2); try { if (reflectionPerm1.IsSubsetOf(reflectionPerm2)) { Console.WriteLine(reflectionPerm1.Flags + " is a subset of " + reflectionPerm2.Flags); } else { Console.WriteLine(reflectionPerm1.Flags + " is not a subset of " + reflectionPerm2.Flags); } } catch (Exception e) { Console.WriteLine("An exception was thrown for subset :" + reflectionPerm1 + "\n" + reflectionPerm2 + "\n" + e); returnValue = false; } } } return returnValue; }
bool IsSubsetOfDemo() { bool returnValue = true; ReflectionPermissionFlag reflection1; ReflectionPermissionFlag reflection2; ReflectionPermission^ reflectionPerm1; ReflectionPermission^ reflectionPerm2; ReflectionGenerator^ reflectionGen1 = gcnew ReflectionGenerator; ReflectionGenerator^ reflectionGen2 = gcnew ReflectionGenerator; reflectionGen1->ResetIndex(); while ( reflectionGen1->CreateReflection( &reflection1 ) ) { reflectionPerm1 = gcnew ReflectionPermission( reflection1 ); reflectionGen2->ResetIndex(); Console::WriteLine( "********************************************************\n" ); while ( reflectionGen2->CreateReflection( &reflection2 ) ) { reflectionPerm2 = gcnew ReflectionPermission( reflection2 ); try { if ( reflectionPerm1->IsSubsetOf( reflectionPerm2 ) ) { Console::WriteLine( "{0} is a subset of {1}", reflectionPerm1->Flags, reflectionPerm2->Flags ); } else { Console::WriteLine( "{0} is not a subset of {1}", reflectionPerm1->Flags, reflectionPerm2->Flags ); } } catch ( Exception^ e ) { Console::WriteLine( "An exception was thrown for subset : {0}\n{1}\n{2}", reflectionPerm1, reflectionPerm2, e ); returnValue = false; } } } return returnValue; }
private boolean IsSubsetOfDemo() { boolean returnValue = true; ReflectionPermissionFlag reflection1[] = new ReflectionPermissionFlag[1] ; ReflectionPermissionFlag reflection2[] = new ReflectionPermissionFlag[1] ; ReflectionPermission reflectionPerm1[] = new ReflectionPermission[1] ; ReflectionPermission reflectionPerm2[] = new ReflectionPermission[1]; ReflectionGenerator reflectionGen1 = new ReflectionGenerator(); ReflectionGenerator reflectionGen2 = new ReflectionGenerator(); reflectionGen1.ResetIndex(); while(reflectionGen1.CreateReflection(reflectionPerm1, reflection1)) { if (reflectionPerm1[0] == null) { continue ; } reflectionGen2.ResetIndex(); Console.WriteLine("***************************************" + "*****************\n"); while(reflectionGen2.CreateReflection( reflectionPerm2, reflection2)) { if (reflectionPerm2[0] == null) { continue ; } try { if ( reflectionPerm1[0].IsSubsetOf(reflectionPerm2[0])) { Console.WriteLine((reflectionPerm1[0].get_Flags() + " is a subset of " + reflectionPerm2[0].get_Flags())); } else { Console.WriteLine((reflectionPerm1[0].get_Flags() + " is not a subset of " + reflectionPerm2[0].get_Flags())); } } catch(System.Exception e) { Console.WriteLine(("An exception was " + "thrown for subset :" + reflectionPerm1[0] + "\n" + reflectionPerm2[0] + "\n" + e)); returnValue = false; } } } return returnValue ; } //IsSubsetOfDemo

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に収録されているすべての辞書からReflectionPermission.IsSubsetOf メソッドを検索する場合は、下記のリンクをクリックしてください。

- ReflectionPermission.IsSubsetOf メソッドのページへのリンク