FileDialogPermission クラス
アセンブリ: mscorlib (mscorlib.dll 内)

<SerializableAttribute> _ <ComVisibleAttribute(True)> _ Public NotInheritable Class FileDialogPermission Inherits CodeAccessPermission Implements IUnrestrictedPermission
[SerializableAttribute] [ComVisibleAttribute(true)] public sealed class FileDialogPermission : CodeAccessPermission, IUnrestrictedPermission
[SerializableAttribute] [ComVisibleAttribute(true)] public ref class FileDialogPermission sealed : public CodeAccessPermission, IUnrestrictedPermission


FileDialogPermission クラス メソッドの動作を示すコード例を次に示します。この例は、メソッドの結果を示すことだけを目的としており、メソッドの一般的な使用方法を示すためのものではありません。FileDialogPermission クラスを使用して特定の FileDialogPermissionAccess 列挙値に対するアクセス許可を要求する例については、FileDialogPermission(FileDialogPermissionAccess) コンストラクタのトピックを参照してください。
Imports System Imports System.Security Imports System.Security.Permissions <assembly: CLSCompliant(True)> Public Class FileDialogPermissionDemo Private fileDialogPerm1 As New FileDialogPermission(FileDialogPermissionAccess.Open) Private fileDialogPerm2 As New FileDialogPermission(FileDialogPermissionAccess.OpenSave) Private fileDialogPerm3 As New FileDialogPermission(PermissionState.None) ' IsSubsetOf determines whether the current permission is a subset of the ' specified permission. Private Function IsSubsetOfDemo() As Boolean Dim returnValue As Boolean = True If fileDialogPerm1.IsSubsetOf(fileDialogPerm2) Then Console.WriteLine(fileDialogPerm1.Access.ToString() + " is a subset of " _ + fileDialogPerm2.Access.ToString()) Else Console.WriteLine(fileDialogPerm1.Access.ToString + " is not a subset of " + _ fileDialogPerm2.Access.ToString()) End If Return returnValue End Function 'IsSubsetOfDemo ' Union creates a new permission that is the union of the current permission and the ' specified permission. Private Function UnionDemo() As Boolean Dim returnValue As Boolean = True fileDialogPerm3 = CType(fileDialogPerm1.Union(fileDialogPerm2), FileDialogPermission) If fileDialogPerm3 Is Nothing Then Console.WriteLine("The union of " + fileDialogPerm1.Access.ToString() + _ " and " + fileDialogPerm2.Access.ToString() + " is null.") Else Console.WriteLine("The union of " + fileDialogPerm1.Access.ToString() + _ " and " + fileDialogPerm2.Access.ToString() + " = " + _ CType(fileDialogPerm3, FileDialogPermission).Access.ToString()) End If Return returnValue End Function 'UnionDemo ' Intersect creates and returns a new permission that is the intersection of the current ' permission and the permission specified. Private Function IntersectDemo() As Boolean Dim returnValue As Boolean = True fileDialogPerm3 = CType(fileDialogPerm1.Intersect(fileDialogPerm2), FileDialogPermission) If Not (fileDialogPerm3 Is Nothing) Then Console.WriteLine("The intersection of " + fileDialogPerm1.Access.ToString() + " and " _ + fileDialogPerm2.Access.ToString() + " = " + CType(fileDialogPerm3, _ FileDialogPermission).Access.ToString()) Else Console.WriteLine("The intersection of " + fileDialogPerm1.Access.ToString() + " and " + _ fileDialogPerm2.Access + " is null.") End If Return returnValue End Function 'IntersectDemo ' Copy creates and returns an identical copy of the current permission. Private Function CopyDemo() As Boolean Dim returnValue As Boolean = True fileDialogPerm2 = CType(fileDialogPerm1.Copy(), FileDialogPermission) Console.WriteLine("Result of copy = " + fileDialogPerm2.ToString()) Return returnValue End Function 'CopyDemo ' ToXml creates an XML encoding of the permission and its current state; FromXml reconstructs a ' permission with the specified state from the XML encoding. Private Function ToFromXmlDemo() As Boolean Dim returnValue As Boolean = True fileDialogPerm2 = New FileDialogPermission(PermissionState.None) fileDialogPerm2.FromXml(fileDialogPerm1.ToXml()) Console.WriteLine("Result of ToFromXml = " + fileDialogPerm2.ToString()) Return returnValue End Function 'ToFromXmlDemo ' Invoke all demos. Public Function RunDemo() As Boolean Dim returnCode As Boolean = True Dim tempReturnCode As Boolean ' Call the IsSubsetOf demo. If IsSubsetOfDemo() Then Console.Out.WriteLine("IsSubsetOf demo completed successfully.") tempReturnCode = True Else Console.Out.WriteLine("IsSubsetOf demo failed.") tempReturnCode = False End If returnCode = tempReturnCode And returnCode ' Call the Union demo. If UnionDemo() Then Console.Out.WriteLine("Union demo completed successfully.") tempReturnCode = True Else Console.Out.WriteLine("Union demo failed.") tempReturnCode = False End If returnCode = tempReturnCode And returnCode ' Call the Intersect demo. If IntersectDemo() Then Console.Out.WriteLine("Intersect demo completed successfully.") tempReturnCode = True Else Console.Out.WriteLine("Intersect demo failed.") tempReturnCode = False End If returnCode = tempReturnCode And returnCode ' Call the Copy demo. If CopyDemo() Then Console.Out.WriteLine("Copy demo completed successfully.") tempReturnCode = True Else Console.Out.WriteLine("Copy demo failed.") tempReturnCode = False End If returnCode = tempReturnCode And returnCode ' Call the ToFromXml demo. If ToFromXmlDemo() Then Console.Out.WriteLine("ToFromXml demo completed successfully.") tempReturnCode = True Else Console.Out.WriteLine("ToFromXml demo failed.") tempReturnCode = False End If returnCode = tempReturnCode And returnCode Return returnCode End Function ' Test harness. Public Shared Sub Main(ByVal args() As String) Try Dim democase As New FileDialogPermissionDemo() Dim returnCode As Boolean = democase.RunDemo() If returnCode Then Console.Out.WriteLine("FileDialogPermission demo completed successfully.") Console.Out.WriteLine("Press the Enter key to exit.") Dim consoleInput As String = Console.ReadLine() System.Environment.ExitCode = 100 Else Console.Out.WriteLine("FileDialogPermission demo failed.") Console.Out.WriteLine("Press the Enter key to exit.") Dim consoleInput As String = Console.ReadLine() System.Environment.ExitCode = 101 End If Catch e As Exception Console.Out.WriteLine("FileDialogPermission failed.") Console.WriteLine(e.ToString()) Console.Out.WriteLine("Press the Enter key to exit.") Dim consoleInput As String = Console.ReadLine() System.Environment.ExitCode = 101 End Try End Sub 'Main End Class 'FileDialogPermissionDemo
using System; using System.Security; using System.Security.Permissions; [assembly: CLSCompliant(true)] public class FileDialogPermissionDemo { FileDialogPermission fileDialogPerm1 = new FileDialogPermission(FileDialogPermissionAccess.Open); FileDialogPermission fileDialogPerm2 = new FileDialogPermission(FileDialogPermissionAccess.OpenSave); FileDialogPermission fileDialogPerm3 = new FileDialogPermission(PermissionState.None); // IsSubsetOf determines whether the current permission is a subset of the // specified permission. private bool IsSubsetOfDemo() { bool returnValue = true; if (fileDialogPerm1.IsSubsetOf(fileDialogPerm2)) { Console.WriteLine(fileDialogPerm1.Access + " is a subset of " + fileDialogPerm2.Access); } else { Console.WriteLine(fileDialogPerm1.Access + " is not a subset of " + fileDialogPerm2.Access); } return returnValue; } // Union creates a new permission that is the union of the current permission and the // specified permission. private bool UnionDemo() { bool returnValue = true; fileDialogPerm3 = (FileDialogPermission)fileDialogPerm1.Union(fileDialogPerm2); if (fileDialogPerm3 == null) { Console.WriteLine("The union of " + fileDialogPerm1.Access + " and " + fileDialogPerm2.Access + " is null."); } else { Console.WriteLine("The union of " + fileDialogPerm1.Access + " and " + fileDialogPerm2.Access + " = " + ((FileDialogPermission)fileDialogPerm3).Access.ToString()); } return returnValue; } // Intersect creates and returns a new permission that is the intersection of the current // permission and the permission specified. private bool IntersectDemo() { bool returnValue = true; fileDialogPerm3 = (FileDialogPermission)fileDialogPerm1.Intersect(fileDialogPerm2); if (fileDialogPerm3 != null) { Console.WriteLine("The intersection of " + fileDialogPerm1.Access + " and " + fileDialogPerm2.Access + " = " + ((FileDialogPermission)fileDialogPerm3).Access.ToString()); } else { Console.WriteLine("The intersection of " + fileDialogPerm1.Access + " and " + fileDialogPerm2.Access + " is null."); } return returnValue; } // Copy creates and returns an identical copy of the current permission. private bool CopyDemo() { bool returnValue = true; fileDialogPerm2 = (FileDialogPermission)fileDialogPerm1.Copy(); Console.WriteLine("Result of copy = " + fileDialogPerm2.ToString()); return returnValue; } // ToXml creates an XML encoding of the permission and its current state; FromXml reconstructs a // permission with the specified state from the XML encoding. private bool ToFromXmlDemo() { bool returnValue = true; fileDialogPerm2 = new FileDialogPermission(PermissionState.None); fileDialogPerm2.FromXml(fileDialogPerm1.ToXml()); Console.WriteLine("Result of ToFromXml = " + fileDialogPerm2.ToString()); return returnValue; } // Invoke all demos. public bool RunDemo() { bool returnCode = true; bool tempReturnCode; // Call IsSubsetOf demo. if (tempReturnCode = IsSubsetOfDemo()) Console.Out.WriteLine("IsSubsetOf demo completed successfully."); else Console.Out.WriteLine("IsSubsetOf demo failed."); returnCode = tempReturnCode && returnCode; // Call Union demo. if (tempReturnCode = UnionDemo()) Console.Out.WriteLine("Union demo completed successfully."); else Console.Out.WriteLine("Union demo failed."); returnCode = tempReturnCode && returnCode; // Call Intersect demo. if (tempReturnCode = IntersectDemo()) Console.Out.WriteLine("Intersect demo completed successfully."); else Console.Out.WriteLine("Intersect demo failed."); returnCode = tempReturnCode && returnCode; // Call Copy demo. if (tempReturnCode = CopyDemo()) Console.Out.WriteLine("Copy demo completed successfully."); else Console.Out.WriteLine("Copy demo failed."); returnCode = tempReturnCode && returnCode; // Call ToFromXml demo. if (tempReturnCode = ToFromXmlDemo()) Console.Out.WriteLine("ToFromXml demo completed successfully."); else Console.Out.WriteLine("ToFromXml demo failed."); returnCode = tempReturnCode && returnCode; return (returnCode); } // Test harness. public static void Main(String[] args) { try { FileDialogPermissionDemo democase = new FileDialogPermissionDemo(); bool returnCode = democase.RunDemo(); if (returnCode) { Console.Out.WriteLine("FileDialogPermission demo completed successfully."); Console.Out.WriteLine("Press the Enter key to exit."); string consoleInput = Console.ReadLine(); System.Environment.ExitCode = 100; } else { Console.Out.WriteLine("FileDialogPermission demo failed."); Console.Out.WriteLine("Press the Enter key to exit."); string consoleInput = Console.ReadLine(); System.Environment.ExitCode = 101; } } catch (Exception e) { Console.Out.WriteLine("FileDialogPermission failed."); Console.WriteLine(e.ToString()); Console.Out.WriteLine("Press the Enter key to exit."); string consoleInput = Console.ReadLine(); System.Environment.ExitCode = 101; } } }
using namespace System::Runtime::InteropServices; using namespace System; using namespace System::Security; using namespace System::Security::Permissions; // This class generates FileDialogPermission objects. [assembly:CLSCompliant(true)]; public ref class FileDialogPermissionDemo { private: // IsSubsetOf determines whether the current permission is a subset of the // specified permission. bool IsSubsetOfDemo() { bool returnValue = true; FileDialogPermission^ fileDialogIdPerm1 = gcnew FileDialogPermission(FileDialogPermissionAccess::Open ); FileDialogPermission^ fileDialogIdPerm2 = gcnew FileDialogPermission( FileDialogPermissionAccess::OpenSave ); if ( fileDialogIdPerm1->IsSubsetOf( fileDialogIdPerm2 ) ) { Console::WriteLine( "{0} is a subset of {1}", fileDialogIdPerm1->Access, fileDialogIdPerm2->Access ); } else { Console::WriteLine( "{0} is not a subset of {1}", fileDialogIdPerm1->Access, fileDialogIdPerm2->Access ); } return returnValue; } // Union creates a new permission that is the union of the current permission and the // specified permission. bool UnionDemo() { bool returnValue = true; FileDialogPermission^ fileDialogIdPerm1 = gcnew FileDialogPermission(FileDialogPermissionAccess::Open ); FileDialogPermission^ fileDialogIdPerm2 = gcnew FileDialogPermission( FileDialogPermissionAccess::OpenSave ); FileDialogPermission^ fileDialogIdPerm3 = gcnew FileDialogPermission(PermissionState::None); fileDialogIdPerm3 = dynamic_cast<FileDialogPermission^>(fileDialogIdPerm1->Union( fileDialogIdPerm2 )); if ( fileDialogIdPerm3 == nullptr ) { Console::WriteLine( "The union of {0} and {1} is null.", fileDialogIdPerm1->Access, fileDialogIdPerm2->Access ); } else { Console::WriteLine( "The union of {0} and {1} = {2}", fileDialogIdPerm1->Access, fileDialogIdPerm2->Access, (dynamic_cast<FileDialogPermission^>(fileDialogIdPerm3))->Access ); } return returnValue; } // Intersect creates and returns a new permission that is the intersection of the current // permission and the permission specified. bool IntersectDemo() { bool returnValue = true; FileDialogPermission^ fileDialogIdPerm1 = gcnew FileDialogPermission(FileDialogPermissionAccess::Open ); FileDialogPermission^ fileDialogIdPerm2 = gcnew FileDialogPermission( FileDialogPermissionAccess::OpenSave ); FileDialogPermission^ fileDialogIdPerm3 = gcnew FileDialogPermission(PermissionState::None); //Console.WriteLine("\tfileDialogIdPerm2 = " +fileDialogIdPerm2.ToString()); fileDialogIdPerm3 = dynamic_cast<FileDialogPermission^>(fileDialogIdPerm1->Intersect( fileDialogIdPerm2 )); if ( fileDialogIdPerm3 != nullptr ) { Console::WriteLine( "The intersection of {0} and {1} = {2}", fileDialogIdPerm1->Access, fileDialogIdPerm2->Access, (dynamic_cast<FileDialogPermission^>(fileDialogIdPerm3))->Access ); } else { Console::WriteLine( "The intersection of {0} and {1} is null.", fileDialogIdPerm1->Access, fileDialogIdPerm2->Access ); } return returnValue; } // Copy creates and returns an identical copy of the current permission. bool CopyDemo() { bool returnValue = true; FileDialogPermission^ fileDialogIdPerm1 = gcnew FileDialogPermission(FileDialogPermissionAccess::Open ); FileDialogPermission^ fileDialogIdPerm2 = gcnew FileDialogPermission( FileDialogPermissionAccess::OpenSave ); FileDialogPermission^ fileDialogIdPerm3 = gcnew FileDialogPermission(PermissionState::None); fileDialogIdPerm2 = dynamic_cast<FileDialogPermission^>(fileDialogIdPerm1->Copy()); Console::WriteLine( "Result of copy = {0}", fileDialogIdPerm2 ); return returnValue; } // ToXml creates an XML encoding of the permission and its current state; FromXml reconstructs a // permission with the specified state from the XML encoding. bool ToFromXmlDemo() { bool returnValue = true; FileDialogPermission^ fileDialogIdPerm1 = gcnew FileDialogPermission(FileDialogPermissionAccess::Open ); FileDialogPermission^ fileDialogIdPerm2 = gcnew FileDialogPermission( FileDialogPermissionAccess::OpenSave ); FileDialogPermission^ fileDialogIdPerm3 = gcnew FileDialogPermission(PermissionState::None); fileDialogIdPerm2 = gcnew FileDialogPermission( PermissionState::None ); fileDialogIdPerm2->FromXml( fileDialogIdPerm1->ToXml() ); Console::WriteLine( "Result of ToFromXml = {0}", fileDialogIdPerm2 ); return returnValue; } public: // Invoke all demos. bool RunDemo() { bool returnCode = true; bool tempReturnCode; // Call IsSubsetOf demo. if ( tempReturnCode = IsSubsetOfDemo() ) Console::WriteLine( "IsSubsetOf demo completed successfully." ); else Console::WriteLine( "IsSubsetOf demo failed." ); returnCode = tempReturnCode && returnCode; // Call Union demo. if ( tempReturnCode = UnionDemo() ) Console::WriteLine( "Union demo completed successfully." ); else Console::WriteLine( "Union demo failed." ); returnCode = tempReturnCode && returnCode; // Call Intersect demo. if ( tempReturnCode = IntersectDemo() ) Console::WriteLine( "Intersect demo completed successfully." ); else Console::WriteLine( "Intersect demo failed." ); returnCode = tempReturnCode && returnCode; // Call Copy demo. if ( tempReturnCode = CopyDemo() ) Console::WriteLine( "Copy demo completed successfully." ); else Console::WriteLine( "Copy demo failed." ); returnCode = tempReturnCode && returnCode; // Call ToFromXml demo. if ( tempReturnCode = ToFromXmlDemo() ) Console::WriteLine( "ToFromXml demo completed successfully." ); else Console::WriteLine( "ToFromXml demo failed." ); returnCode = tempReturnCode && returnCode; return (returnCode); } }; // Test harness. int main() { try { FileDialogPermissionDemo^ democase = gcnew FileDialogPermissionDemo; bool returnCode = democase->RunDemo(); if ( returnCode ) { Console::WriteLine( "FileDialogPermission demo completed successfully." ); Console::WriteLine( "Press the Enter key to exit." ); Console::ReadLine(); System::Environment::ExitCode = 100; } else { Console::WriteLine( "FileDialogPermission demo failed." ); Console::WriteLine( "Press the Enter key to exit." ); Console::ReadLine(); System::Environment::ExitCode = 101; } } catch ( Exception^ e ) { Console::WriteLine( "FileDialogPermission failed." ); Console::WriteLine( e ); Console::WriteLine( "Press the Enter key to exit." ); Console::ReadLine(); System::Environment::ExitCode = 101; } }
// This sample demonstrates the IsSubsetOf, Union, Intersect, Copy, // ToXml and FromXml methods // of the FileDialogPermission class. import System .* ; import System.Security .* ; import System.Security.Permissions .* ; /** @assembly CLSCompliant(true) */ public class FileDialogPermissionDemo { // IsSubsetOf determines whether the current permission is a subset of the // specified permission. private boolean IsSubsetOfDemo() { boolean returnValue = true; FileDialogPermissionAccess fileDialog1[] = new FileDialogPermissionAccess[1]; FileDialogPermissionAccess fileDialog2[] = new FileDialogPermissionAccess[1]; FileDialogPermission fileDialogIdPerm1[] = new FileDialogPermission[1]; FileDialogPermission fileDialogIdPerm2[] = new FileDialogPermission[1]; FileDialogGenerator fileDialogGen1 = new FileDialogGenerator(); FileDialogGenerator fileDialogGen2 = new FileDialogGenerator(); fileDialogGen1.ResetIndex(); while(fileDialogGen1.CreateFileDialog (fileDialogIdPerm1, fileDialog1)) { if (fileDialogIdPerm1[0] == null) { continue ; } fileDialogGen2.ResetIndex(); Console.WriteLine("**********************" + "**********************************\n"); while(fileDialogGen2.CreateFileDialog( fileDialogIdPerm2, fileDialog2)) { if (fileDialogIdPerm2[0] == null) { continue ; } try { if (fileDialogIdPerm1[0]. IsSubsetOf(fileDialogIdPerm2[0])) { Console.WriteLine((fileDialogIdPerm1[0].get_Access() + " is a subset of " + fileDialogIdPerm2[0].get_Access())); } else { Console.WriteLine((fileDialogIdPerm1[0].get_Access() + " is not a subset of " + fileDialogIdPerm2[0].get_Access())); } } catch(System.Exception e){ Console.WriteLine(("An exception was thrown " + "for subset :" + fileDialogIdPerm1[0] + "\n" + fileDialogIdPerm2[0] + "\n" + e)); returnValue = false; } } } return returnValue ; } //IsSubsetOfDemo // Union creates a new permission that is the union of // the current permission and the // specified permission. private boolean UnionDemo() { boolean returnValue = true; FileDialogPermissionAccess fileDialog1[] = new FileDialogPermissionAccess[1]; FileDialogPermissionAccess fileDialog2[] = new FileDialogPermissionAccess[1]; FileDialogPermission fileDialogIdPerm1[] = new FileDialogPermission[1]; FileDialogPermission fileDialogIdPerm2[] = new FileDialogPermission[1]; IPermission fileDialogIdPerm3; FileDialogGenerator fileDialogGen1 = new FileDialogGenerator(); FileDialogGenerator fileDialogGen2 = new FileDialogGenerator(); fileDialogGen1.ResetIndex(); while(fileDialogGen1.CreateFileDialog(fileDialogIdPerm1, fileDialog1)) { if (fileDialogIdPerm1[0] == null) { continue ; } Console.WriteLine("************************" + "**********************************\n"); fileDialogGen2.ResetIndex(); while(fileDialogGen2.CreateFileDialog(fileDialogIdPerm2, fileDialog2)) { if (fileDialogIdPerm2[0] == null) { continue ; } fileDialogIdPerm3 =((FileDialogPermission)( fileDialogIdPerm1[0].Union(fileDialogIdPerm2[0]))); fileDialogIdPerm3 = fileDialogIdPerm1[0]. Union(fileDialogIdPerm2[0]); if (fileDialogIdPerm3 == null) { Console.WriteLine(("The union of " + fileDialog1[0] + " and " + fileDialog2[0] + " is null.")); } else { Console.WriteLine(("The union of " + fileDialogIdPerm1[0].get_Access() + " and " + fileDialogIdPerm2[0].get_Access() + " = " + ((FileDialogPermission)(fileDialogIdPerm3)). get_Access().ToString())); } } } return returnValue ; } //UnionDemo // Intersect creates and returns a new permission that is the // intersection of the current // permission and the permission specified. private boolean IntersectDemo() { boolean returnValue = true; FileDialogPermissionAccess fileDialog1[] = new FileDialogPermissionAccess[1]; FileDialogPermissionAccess fileDialog2[] = new FileDialogPermissionAccess[1]; FileDialogPermission fileDialogIdPerm1[] = new FileDialogPermission[1]; FileDialogPermission fileDialogIdPerm2[] = new FileDialogPermission[1]; FileDialogPermission fileDialogIdPerm3 = null; FileDialogGenerator fileDialogGen1 = new FileDialogGenerator(); FileDialogGenerator fileDialogGen2 = new FileDialogGenerator(); fileDialogGen1.ResetIndex(); while(fileDialogGen1.CreateFileDialog( fileDialogIdPerm1, fileDialog1)) { if (fileDialogIdPerm1[0] == null) { continue ; } Console.WriteLine("***************************" + "*******************************\n"); fileDialogGen2.ResetIndex(); while(fileDialogGen2.CreateFileDialog( fileDialogIdPerm2, fileDialog2)) { if (fileDialogIdPerm2[0] == null) { continue ; } fileDialogIdPerm3 =((FileDialogPermission) (fileDialogIdPerm1[0].Intersect (fileDialogIdPerm2[0]))); if (fileDialogIdPerm3 != null) { Console.WriteLine(("The intersection of " + fileDialog1[0] + " and " + fileDialog2[0] + " = " +((FileDialogPermission)(fileDialogIdPerm3)). get_Access().ToString())); } else { Console.WriteLine(("The intersection of " + fileDialog1[0] + " and " + fileDialog2[0] + " is null.")); } } } return returnValue ; } //IntersectDemo // Copy creates and returns an identical copy of the current permission. private boolean CopyDemo() { boolean returnValue = true; FileDialogPermissionAccess fileDialog1[] = new FileDialogPermissionAccess[1]; FileDialogPermission fileDialogIdPerm1[] = new FileDialogPermission[1]; FileDialogPermission fileDialogIdPerm2[] = new FileDialogPermission[1]; FileDialogGenerator fileDialogGen1 = new FileDialogGenerator(); FileDialogGenerator fileDialogGen2 = new FileDialogGenerator(); fileDialogGen1.ResetIndex(); while(fileDialogGen1.CreateFileDialog(fileDialogIdPerm1, fileDialog1)) { if ( fileDialogIdPerm1[0] == null ) { continue ; } fileDialogGen2.ResetIndex(); Console.WriteLine("************************" + "********************************\n"); try { fileDialogIdPerm2[0] =( (FileDialogPermission)(fileDialogIdPerm1[0].Copy())); Console.WriteLine(("Result of copy = " + fileDialogIdPerm2[0].ToString())); } catch(System.Exception e) { Console.WriteLine(("Copy failed :" + fileDialogIdPerm1[0].ToString() + e)); continue ; } } return returnValue ; } //CopyDemo // ToXml creates an XML encoding of the permission and its current // state; FromXml reconstructs a // permission with the specified state from the XML encoding. private boolean ToFromXmlDemo() { boolean returnValue = true; FileDialogPermissionAccess fileDialog1[] = new FileDialogPermissionAccess[1]; FileDialogPermission fileDialogIdPerm1[] = new FileDialogPermission[1]; FileDialogPermission fileDialogIdPerm2[] = new FileDialogPermission[1]; FileDialogGenerator fileDialogGen1 = new FileDialogGenerator(); FileDialogGenerator fileDialogGen2 = new FileDialogGenerator(); fileDialogGen1.ResetIndex(); while(fileDialogGen1.CreateFileDialog(fileDialogIdPerm1, fileDialog1)) { if (fileDialogIdPerm1[0] == null) { continue ; } Console.WriteLine("************************" + "********************************\n"); fileDialogGen2.ResetIndex(); try { fileDialogIdPerm2[0] = new FileDialogPermission(PermissionState.None); fileDialogIdPerm2[0].FromXml(fileDialogIdPerm1[0].ToXml()); Console.WriteLine(("Result of ToFromXml = " + fileDialogIdPerm2[0].ToString())); } catch(System.Exception e) { Console.WriteLine(("ToFromXml failed :" + fileDialogIdPerm1[0].ToString() + e)); continue ; } } return returnValue ; } //ToFromXmlDemo // Invoke all demos. public boolean RunDemo() { boolean returnCode = true; boolean tempReturnCode; // Call IsSubsetOf demo. if (tempReturnCode = IsSubsetOfDemo()) { Console.get_Out().WriteLine("IsSubsetOf demo " + "completed successfully."); } else { Console.get_Out().WriteLine("IsSubsetOf demo failed."); } returnCode = tempReturnCode && returnCode; // Call Union demo. if (tempReturnCode = UnionDemo()) { Console.get_Out().WriteLine("Union demo " + "completed successfully."); } else { Console.get_Out().WriteLine("Union demo failed."); } returnCode = tempReturnCode && returnCode; // Call Intersect demo. if (tempReturnCode = IntersectDemo()) { Console.get_Out().WriteLine("Intersect demo completed " + "successfully."); } else { Console.get_Out().WriteLine("Intersect demo failed."); } returnCode = tempReturnCode && returnCode; // Call Copy demo. if (tempReturnCode = CopyDemo()) { Console.get_Out().WriteLine("Copy demo completed " + "successfully."); } else { Console.get_Out().WriteLine("Copy demo failed."); } returnCode = tempReturnCode && returnCode; // Call ToFromXml demo. if (tempReturnCode = ToFromXmlDemo()) { Console.get_Out().WriteLine("ToFromXml demo completed " + "successfully."); } else { Console.get_Out().WriteLine("ToFromXml demo failed."); } returnCode = tempReturnCode && returnCode; return returnCode ; } //RunDemo // Test harness. public static void main(String[] args) { try { FileDialogPermissionDemo democase = new FileDialogPermissionDemo(); boolean returnCode = democase.RunDemo(); if (returnCode) { Console.get_Out().WriteLine("FileDialogPermission demo " + "completed successfully."); Console.get_Out().WriteLine("Press the Enter key to exit."); String consoleInput = Console.ReadLine(); System.Environment.set_ExitCode(100); } else { Console.get_Out().WriteLine("FileDialogPermission demo " + "failed."); Console.get_Out().WriteLine("Press the Enter key to exit."); String consoleInput = Console.ReadLine(); System.Environment.set_ExitCode(101); } } catch(System.Exception e){ Console.get_Out().WriteLine("FileDialogPermission failed."); Console.WriteLine(e.ToString()); Console.get_Out().WriteLine("Press the Enter key to exit."); String consoleInput = Console.ReadLine(); System.Environment.set_ExitCode(101); } } //main } //FileDialogPermissionDemo // This class generates FileDialogPermission objects. class FileDialogGenerator { private FileDialogPermissionAccess myFileDialog[] = {FileDialogPermissionAccess.None, FileDialogPermissionAccess.Open, FileDialogPermissionAccess.OpenSave, FileDialogPermissionAccess.Save}; private int fileDialogIndex = 0; public FileDialogGenerator() { ResetIndex(); } //FileDialogGenerator public void ResetIndex() { fileDialogIndex = 0; } //ResetIndex // Create a FileDialogPermission. public boolean CreateFileDialog(FileDialogPermission fileDialogPerm[], FileDialogPermissionAccess fileDialog[]) { if (fileDialogIndex >= myFileDialog.length) { fileDialogPerm[0] = new FileDialogPermission(PermissionState.None); fileDialog[0] = FileDialogPermissionAccess.None; return false ; } fileDialog[0] = myFileDialog[fileDialogIndex++]; try { fileDialogPerm[0] = new FileDialogPermission(fileDialog[0]); return true ; } catch(System.Exception e) { Console.WriteLine(("Cannot create FileDialogPermission: " + fileDialog + " " + e)); fileDialogPerm[0] = new FileDialogPermission(PermissionState.None); fileDialog[0] = FileDialogPermissionAccess.None; return true ; } } //CreateFileDialog } //FileDialogGenerator

System.Security.CodeAccessPermission
System.Security.Permissions.FileDialogPermission


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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


FileDialogPermission コンストラクタ (PermissionState)
アセンブリ: mscorlib (mscorlib.dll 内)




FileDialogPermission^ fileDialogIdPerm3 = gcnew FileDialogPermission(PermissionState::None);

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


FileDialogPermission コンストラクタ

名前 | 説明 |
---|---|
FileDialogPermission (FileDialogPermissionAccess) | アクセス権を指定して、FileDialogPermission クラスの新しいインスタンスを初期化します。 |
FileDialogPermission (PermissionState) | 制限されたアクセス許可か無制限のアクセス許可のいずれかを指定して、FileDialogPermission クラスの新しいインスタンスを初期化します。 |

FileDialogPermission コンストラクタ (FileDialogPermissionAccess)
アセンブリ: mscorlib (mscorlib.dll 内)



FileDialogPermission クラスの宣言形式および強制形式を示すコード例を次に示します。ダイアログを表示する最初の試行は成功しますが、その後の試行は、Main メソッドから発行された Deny のために失敗します。宣言セキュリティは、クラス内のコードを実行するための最小限のアクセス許可を要求するためにクラスで使用されます。
Imports System Imports System.Security Imports System.Security.Permissions Imports System.Windows.Forms Imports System.IO ' Declare FileDialogPermissionAttribute declaratively to request minimum ' permissions for the code in this class to run. <Assembly: FileDialogPermissionAttribute( _ SecurityAction.RequestMinimum, Open:=True)> Public Class Form1 Inherits System.Windows.Forms.Form Private fileStream As Stream ' Event handler for Run button. Private Sub Button1_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click tbxOutput.Cursor = Cursors.WaitCursor tbxOutput.Text = "" tbxOutput.AppendText("Opened file " + OpenFile() + vbCrLf) ' Deny permission to use of the Open dialog box. Dim dialogPermission As _ New FileDialogPermission(FileDialogPermissionAccess.Open) dialogPermission.Deny() OpenFile() CloseStream() ' Align interface and conclude application. tbxOutput.AppendText(vbCrLf + "This sample completed " + _ "successfully; press Exit to continue.") ' Reset the cursor. tbxOutput.Cursor = Cursors.Default End Sub ' Display open dialog box, store the file stream of the specified file ' in the fileStream member variable. Private Function OpenFile() As String Dim fileName As String Dim openDialogBox As New OpenFileDialog openDialogBox.InitialDirectory = "c:\" openDialogBox.Filter = "txt files (*.txt)|*.txt" openDialogBox.RestoreDirectory = True Try ' If user selects OK, store file name and stream. If (openDialogBox.ShowDialog() = DialogResult.OK) Then fileName = openDialogBox.FileName fileStream = openDialogBox.OpenFile() fileStream.Close() End If Catch ex As Exception tbxOutput.AppendText(ex.Message + vbCrLf) End Try openDialogBox.Dispose() ' Return specified file name. Return fileName End Function ' Close the file stream. Private Sub CloseStream() If Not fileStream Is Nothing Then fileStream.Close() End If End Sub ' Event handler for Exit button. Private Sub Button2_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button2.Click Application.Exit() End Sub #Region " Windows Form Designer generated code " Public Sub New() MyBase.New() 'This call is required by the Windows Form Designer. InitializeComponent() 'Add any initialization after the InitializeComponent() call End Sub 'Form overrides dispose to clean up the component list. Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (components Is Nothing) Then components.Dispose() End If End If MyBase.Dispose(disposing) End Sub 'Required by the Windows Form Designer Private components As System.ComponentModel.IContainer 'NOTE: The following procedure is required by the Windows Form Designer 'It can be modified using the Windows Form Designer. 'Do not modify it using the code editor. Friend WithEvents Panel2 As System.Windows.Forms.Panel Friend WithEvents Panel1 As System.Windows.Forms.Panel Friend WithEvents Button1 As System.Windows.Forms.Button Friend WithEvents Button2 As System.Windows.Forms.Button Friend WithEvents tbxOutput As System.Windows.Forms.RichTextBox <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() Me.Panel2 = New System.Windows.Forms.Panel Me.Button1 = New System.Windows.Forms.Button Me.Button2 = New System.Windows.Forms.Button Me.Panel1 = New System.Windows.Forms.Panel Me.tbxOutput = New System.Windows.Forms.RichTextBox Me.Panel2.SuspendLayout() Me.Panel1.SuspendLayout() Me.SuspendLayout() ' 'Panel2 ' Me.Panel2.Controls.Add(Me.Button1) Me.Panel2.Controls.Add(Me.Button2) Me.Panel2.Dock = System.Windows.Forms.DockStyle.Bottom Me.Panel2.DockPadding.All = 20 Me.Panel2.Location = New System.Drawing.Point(0, 320) Me.Panel2.Name = "Panel2" Me.Panel2.Size = New System.Drawing.Size(616, 64) Me.Panel2.TabIndex = 1 ' 'Button1 ' Me.Button1.Dock = System.Windows.Forms.DockStyle.Right Me.Button1.Font = New System.Drawing.Font( _ "Microsoft Sans Serif", _ 9.0!, _ System.Drawing.FontStyle.Regular, _ System.Drawing.GraphicsUnit.Point, _ CType(0, Byte)) Me.Button1.Location = New System.Drawing.Point(446, 20) Me.Button1.Name = "Button1" Me.Button1.Size = New System.Drawing.Size(75, 24) Me.Button1.TabIndex = 2 Me.Button1.Text = "&Run" ' 'Button2 ' Me.Button2.Dock = System.Windows.Forms.DockStyle.Right Me.Button2.Font = New System.Drawing.Font( _ "Microsoft Sans Serif", _ 9.0!, _ System.Drawing.FontStyle.Regular, _ System.Drawing.GraphicsUnit.Point, _ CType(0, Byte)) Me.Button2.Location = New System.Drawing.Point(521, 20) Me.Button2.Name = "Button2" Me.Button2.Size = New System.Drawing.Size(75, 24) Me.Button2.TabIndex = 3 Me.Button2.Text = "E&xit" ' 'Panel1 ' Me.Panel1.Controls.Add(Me.tbxOutput) Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill Me.Panel1.DockPadding.All = 20 Me.Panel1.Location = New System.Drawing.Point(0, 0) Me.Panel1.Name = "Panel1" Me.Panel1.Size = New System.Drawing.Size(616, 320) Me.Panel1.TabIndex = 2 ' 'tbxOutput ' Me.tbxOutput.AccessibleDescription = _ "Displays output from application." Me.tbxOutput.AccessibleName = "Output textbox." Me.tbxOutput.Dock = System.Windows.Forms.DockStyle.Fill Me.tbxOutput.Location = New System.Drawing.Point(20, 20) Me.tbxOutput.Name = "tbxOutput" Me.tbxOutput.Size = New System.Drawing.Size(576, 280) Me.tbxOutput.TabIndex = 1 Me.tbxOutput.Text = "Click the Run button to run the application." ' 'Form1 ' Me.AutoScaleBaseSize = New System.Drawing.Size(6, 15) Me.ClientSize = New System.Drawing.Size(616, 384) Me.Controls.Add(Me.Panel1) Me.Controls.Add(Me.Panel2) Me.Name = "Form1" Me.Text = "FileDialogPermission" Me.Panel2.ResumeLayout(False) Me.Panel1.ResumeLayout(False) Me.ResumeLayout(False) End Sub #End Region End Class ' ' This sample produces the following output: ' ' Opened file C:\testfile.txt ' Request for the permission of type ' System.Security.Permissions.FileDialogPermission, mscorlib, ' Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 failed. ' ' This sample completed successfully; press Exit to continue.
using System; using System.Security; using System.Security.Permissions; using System.Windows.Forms; using System.IO; // Add the declarative FileDialogPermissionAttribute to request minimum // permissions for the code in this class to run. [assembly:FileDialogPermissionAttribute( SecurityAction.RequestMinimum, Open=true)] public class DialogPermissions { private Stream fileStream; public static void Main() { DialogPermissions dialogAccess = new DialogPermissions(); Console.WriteLine("Opened file " + dialogAccess.OpenFile()); // Deny permission to use of the Open dialog box. FileDialogPermission dialogPermission = new FileDialogPermission(FileDialogPermissionAccess.Open); dialogPermission.Deny(); dialogAccess.OpenFile(); dialogAccess.CloseStream(); } // Display open dialog box, store the file stream of the specified file // in the fileStream member variable. private string OpenFile() { string fileName = null; OpenFileDialog openDialogBox = new OpenFileDialog(); openDialogBox.InitialDirectory = "c:\\"; openDialogBox.Filter = "txt files (*.txt)|*.txt"; openDialogBox.RestoreDirectory = true; try { // If user selects OK, store file name and stream. if(openDialogBox.ShowDialog() == DialogResult.OK) { fileName = openDialogBox.FileName; fileStream = openDialogBox.OpenFile(); fileStream.Close(); } } catch (Exception ex) { Console.WriteLine(ex.Message); } openDialogBox.Dispose(); // Return specified file name. return fileName; } // Close the file stream. private void CloseStream() { if (fileStream != null) { fileStream.Close(); } } } // // This sample produces the following output: // // Opened file C:\testfile.txt // Request for the permission of type // System.Security.Permissions.FileDialogPermission, mscorlib, // Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 // failed. // // This sample completed successfully; press Exit to continue.
import System.*; import System.Security.*; import System.Security.Permissions.*; import System.Windows.Forms.*; import System.IO.*; // Add the declarative FileDialogPermissionAttribute to request minimum // permissions for the code in this class to run. /** @assembly FileDialogPermissionAttribute(SecurityAction.RequestMinimum, Open = true) */ public class DialogPermissions { private Stream fileStream; public static void main(String[] args) { DialogPermissions dialogAccess = new DialogPermissions(); Console.WriteLine("Opened file " + dialogAccess.OpenFile()); // Deny permission to use of the Open dialog box. FileDialogPermission dialogPermission = new FileDialogPermission(FileDialogPermissionAccess.Open); dialogPermission.Deny(); dialogAccess.OpenFile(); dialogAccess.CloseStream(); } //main // Display open dialog box, store the file stream of the specified file // in the fileStream member variable. private String OpenFile() { String fileName = null; OpenFileDialog openDialogBox = new OpenFileDialog(); openDialogBox.set_InitialDirectory("c:\\"); openDialogBox.set_Filter("txt files (*.txt)|*.txt"); openDialogBox.set_RestoreDirectory(true); try { // If user selects OK, store file name and stream. if (openDialogBox.ShowDialog().Equals(DialogResult.OK)) { fileName = openDialogBox.get_FileName(); fileStream = openDialogBox.OpenFile(); fileStream.Close(); } } catch (System.Exception ex) { Console.WriteLine(ex.get_Message()); } openDialogBox.Dispose(); // Return specified file name. return fileName; } //OpenFile // Close the file stream. private void CloseStream() { if (fileStream != null) { fileStream.Close(); } } //CloseStream } //DialogPermissions // // This sample produces the following output: // // Opened file C:\testfile.txt // Request for the permission of type // System.Security.Permissions.FileDialogPermission, mscorlib, // Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 // failed. // // This sample completed successfully; press Exit to continue.

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 によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


FileDialogPermission プロパティ
FileDialogPermission メソッド


FileDialogPermission メンバ
ファイル ダイアログを使用してファイルやフォルダにアクセスする機能を制御します。このクラスは継承できません。
FileDialogPermission データ型で公開されるメンバを以下の表に示します。




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

- FileDialogPermissionのページへのリンク