FileDialogPermissionAccess 列挙体

ファイル ダイアログを使用して実行できるファイルへのアクセスの種類を指定します。

この列挙体には、メンバ値をビットごとに演算するための FlagsAttribute 属性が含まれています。

<Flags>
<Serializable>
Public Enum FileDialogPermissionAccess
[C#]
[Flags]
[Serializable]
public enum FileDialogPermissionAccess
[C++]
[Flags]
[Serializable]
__value public enum FileDialogPermissionAccess
[JScript]
public
   Flags
 Serializable
enum FileDialogPermissionAccess

メンバ

メンバ名 説明
None ファイル ダイアログを使用してファイルへアクセスできません。 0
Open ファイル ダイアログを使用してファイルを開く機能。 1
OpenSave ファイル ダイアログを使用してファイルを開いて保存する機能。 3
Save ファイル ダイアログを使用してファイルを保存する機能。 2

使用例

 
' This class generates FileDialogPermission objects using FileDialogPermissionAccess enumeration values.

Imports System
Imports System.Security
Imports System.Security.Permissions
Imports Microsoft.VisualBasic

Public Class FileDialogGenerator


    Private myFileDialog As FileDialogPermissionAccess() = _
        {FileDialogPermissionAccess.None, _
        FileDialogPermissionAccess.Open, _
        FileDialogPermissionAccess.OpenSave, _
        FileDialogPermissionAccess.Save}

    Private fileDialogIndex As Integer = 0


    Public Sub New()
        ResetIndex()
    End Sub 'New


    Public Sub ResetIndex()
        fileDialogIndex = 0
    End Sub 'ResetIndex

    ' Create a FileDialogPermission.
    Public Function CreateFileDialog(ByRef fileDialogPerm As FileDialogPermission, ByRef fileDialog As FileDialogPermissionAccess) As Boolean

        If fileDialogIndex >= myFileDialog.Length Then
            fileDialogPerm = New FileDialogPermission(PermissionState.None)
            fileDialog = FileDialogPermissionAccess.None
            Return False
        End If
        fileDialog = myFileDialog(fileDialogIndex)
        fileDialogIndex = fileDialogIndex + 1
        Try
            fileDialogPerm = New FileDialogPermission(fileDialog)
            Return True
        Catch e As Exception
            Console.WriteLine(("Cannot create FileDialogPermission: " & fileDialog & " " & e.ToString()))
            fileDialogPerm = New FileDialogPermission(PermissionState.None)
            fileDialog = FileDialogPermissionAccess.None
            Return True
        End Try
    End Function 'CreateFileDialog
End Class 'FileDialogGenerator 
' End of FileDialogGenerator.

[C#] 
// This class generates FileDialogPermission objects using FileDialogPermissionAccess enumeration values.

using System;
using System.Security; 
using System.Security.Permissions; 


public  class FileDialogGenerator
{


    private FileDialogPermissionAccess[] myFileDialog = 
    {
        FileDialogPermissionAccess.None,
        FileDialogPermissionAccess.Open, 
        FileDialogPermissionAccess.OpenSave, 
        FileDialogPermissionAccess.Save};

    private int fileDialogIndex = 0;

    public FileDialogGenerator()
    {
        ResetIndex();
    }

    public void ResetIndex()
    {
        fileDialogIndex = 0;
    }
    // Create a FileDialogPermission.
    public bool CreateFileDialog(out FileDialogPermission fileDialogPerm, 
        out FileDialogPermissionAccess fileDialog)
    {

        if(fileDialogIndex >= myFileDialog.Length) 
        {
            fileDialogPerm = new FileDialogPermission(PermissionState.None);
            fileDialog=FileDialogPermissionAccess.None;
            return false;
        }
        fileDialog = myFileDialog[fileDialogIndex++];
        try
        {
            fileDialogPerm = new FileDialogPermission(fileDialog);
            return true;
        } 
        catch(Exception e)
        {
            Console.WriteLine("Cannot create FileDialogPermission: " + fileDialog +" "+e);
            fileDialogPerm = new FileDialogPermission(PermissionState.None);
            fileDialog=FileDialogPermissionAccess.None;
            return true;
        }
    }

} // End of FileDialogGenerator.

[C++] 
// This class generates FileDialogPermission objects using FileDialogPermissionAccess enumeration values.

#using <mscorlib.dll>
using namespace System::Runtime::InteropServices;
using namespace System;
using namespace System::Security; 
using namespace System::Security::Permissions; 


public  __gc class FileDialogGenerator
{
private:
   FileDialogPermissionAccess myFileDialog[];
   int fileDialogIndex;

public:
   FileDialogGenerator()
   {
      ResetIndex();
      FileDialogPermissionAccess tempFileDialog[] = {
         FileDialogPermissionAccess::None,
         FileDialogPermissionAccess::Open, 
         FileDialogPermissionAccess::OpenSave, 
         FileDialogPermissionAccess::Save};
      myFileDialog = tempFileDialog;
   }

   void ResetIndex()
   {
      fileDialogIndex = 0;
   }
   // Create a FileDialogPermission.
   bool CreateFileDialog([Out]FileDialogPermission** fileDialogPerm, 
      [Out]FileDialogPermissionAccess* fileDialog)
   {

      if(fileDialogIndex >= myFileDialog->Length) 
      {
         *fileDialogPerm = new FileDialogPermission(PermissionState::None);
         *fileDialog=FileDialogPermissionAccess::None;
         return false;
      }
      *fileDialog = myFileDialog[fileDialogIndex++];
      try
      {
         *fileDialogPerm = new FileDialogPermission(*fileDialog);
         return true;
      } 
      catch(Exception* e)
      {
         Console::WriteLine(S"Cannot create FileDialogPermission: {0} {1}", __box(*fileDialog), e);
         *fileDialogPerm = new FileDialogPermission(PermissionState::None);
         *fileDialog=FileDialogPermissionAccess::None;
         return true;
      }
   }
}; // End of FileDialogGenerator.

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Security.Permissions

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

System.Security.Permissions 名前空間 | FileDialogPermission | FileDialogPermissionAttribute