EnvironmentPermission.Intersect メソッド
アセンブリ: mscorlib (mscorlib.dll 内)
構文Dim instance As EnvironmentPermission Dim target As IPermission Dim returnValue As IPermission returnValue = instance.Intersect(target)
戻り値
現在のアクセス許可と指定したアクセス許可の積集合を表す新しいアクセス許可。積集合が空の場合、この新しいアクセス許可は null 参照 (Visual Basic では Nothing) です。
例外
解説2 つのアクセス許可の積集合となるアクセス許可には、両方に共通する状態が記述されています。2 つのアクセス許可を要求し、その両方について要求が満たされる場合にだけ、それらの積集合を表すアクセス許可に対する要求も満たされます。
使用例Intersect メソッドを使用するコード例を次に示します。このコード例は、EnvironmentPermission クラスのトピックで取り上げているコード例の一部分です。
Private Function IntersectDemo() As Boolean Dim envIdPerm3 As IPermission Dim returnValue As Boolean = True Dim envPerm1 As New EnvironmentPermission(EnvironmentPermissionAccess.Read, "windir") Dim envPerm2 As New EnvironmentPermission(EnvironmentPermissionAccess.Read, "TEMP") Try envIdPerm3 = CType(envPerm1.Intersect(envPerm2), EnvironmentPermission) If Not (envIdPerm3 Is Nothing) AndAlso Not (CType(envIdPerm3, _ EnvironmentPermission).GetPathList(EnvironmentPermissionAccess.Read) Is Nothing) Then Console.WriteLine("The intersection of " + "windir" + " and " + "TEMP" + _ " = " + CType(envIdPerm3, EnvironmentPermission).GetPathList(EnvironmentPermissionAccess.Read).ToString()) Else Console.WriteLine("The intersection of " + "windir" + " and " + "TEMP" + " is null.") End If Catch e As Exception Console.WriteLine("An exception was thrown for intersection : " + e.Message) returnValue = False End Try Return returnValue End Function 'IntersectDemo
private bool IntersectDemo() { IPermission envIdPerm3; bool returnValue = true; EnvironmentPermission envPerm1 = new EnvironmentPermission(EnvironmentPermissionAccess.Read, "windir"); EnvironmentPermission envPerm2 = new EnvironmentPermission(EnvironmentPermissionAccess.Read, "TEMP"); try { envIdPerm3 = (EnvironmentPermission)envPerm1.Intersect(envPerm2); if (envIdPerm3 != null && ((EnvironmentPermission)envIdPerm3).GetPathList(EnvironmentPermissionAccess.Read) != null) { Console.WriteLine("The intersection of " + "windir" + " and " + "TEMP" + " = " + ((EnvironmentPermission)envIdPerm3).GetPathList(EnvironmentPermissionAccess.Read).ToString()); } else { Console.WriteLine("The intersection of " + "windir" + " and " + "TEMP" + " is null."); } } catch (Exception e) { Console.WriteLine("An exception was thrown for intersection : " + e); returnValue = false; } return returnValue; }
プラットフォーム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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照- EnvironmentPermission.Intersect メソッドのページへのリンク