FileDialogPermissionAccess 열거형
파일 대화 상자에서 허용되는 파일에 대한 액세스 형식을 지정합니다.
이 열거형에는 멤버 값를 비트로 조합할 수 있는 FlagsAttribute 특성이 있습니다.
네임스페이스: System.Security.Permissions
어셈블리: mscorlib(mscorlib.dll)
구문
‘선언
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
<FlagsAttribute> _
Public Enumeration FileDialogPermissionAccess
‘사용 방법
Dim instance As FileDialogPermissionAccess
[SerializableAttribute]
[ComVisibleAttribute(true)]
[FlagsAttribute]
public enum FileDialogPermissionAccess
[SerializableAttribute]
[ComVisibleAttribute(true)]
[FlagsAttribute]
public enum class FileDialogPermissionAccess
/** @attribute SerializableAttribute() */
/** @attribute ComVisibleAttribute(true) */
/** @attribute FlagsAttribute() */
public enum FileDialogPermissionAccess
SerializableAttribute
ComVisibleAttribute(true)
FlagsAttribute
public enum FileDialogPermissionAccess
멤버
멤버 이름 | 설명 | |
---|---|---|
None | 파일 대화 상자에서 파일에 액세스할 수 없습니다. | |
Open | 파일 대화 상자에서 파일을 열 수 있습니다. | |
OpenSave | 파일 대화 상자에서 파일을 열고 저장할 수 있습니다. | |
Save | 파일 대화 상자에서 파일을 저장할 수 있습니다. |
예제
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
End Class
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;
}
}
}
using namespace System::Runtime::InteropServices;
using namespace System;
using namespace System::Security;
using namespace System::Security::Permissions;
public ref class FileDialogGenerator
{
private:
array<FileDialogPermissionAccess>^myFileDialog;
int fileDialogIndex;
public:
FileDialogGenerator()
{
ResetIndex();
array<FileDialogPermissionAccess>^ tempFileDialog = {FileDialogPermissionAccess::None,FileDialogPermissionAccess::Open,FileDialogPermissionAccess::OpenSave,FileDialogPermissionAccess::Save};
myFileDialog = tempFileDialog;
}
void ResetIndex()
{
fileDialogIndex = 0;
}
// Create a FileDialogPermission.
bool CreateFileDialog( [Out]interior_ptr<FileDialogPermission^> fileDialogPerm, [Out]FileDialogPermissionAccess * fileDialog )
{
if ( fileDialogIndex >= myFileDialog->Length )
{
*fileDialogPerm = gcnew FileDialogPermission( PermissionState::None );
*fileDialog = FileDialogPermissionAccess::None;
return false;
}
*fileDialog = myFileDialog[ fileDialogIndex++ ];
try
{
*fileDialogPerm = gcnew FileDialogPermission( *fileDialog );
return true;
}
catch ( Exception^ e )
{
Console::WriteLine( "Cannot create FileDialogPermission: {0} {1}", *fileDialog, e );
*fileDialogPerm = gcnew FileDialogPermission( PermissionState::None );
*fileDialog = FileDialogPermissionAccess::None;
return true;
}
}
};
플랫폼
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에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
2.0, 1.1, 1.0에서 지원
참고 항목
참조
System.Security.Permissions 네임스페이스
FileDialogPermission 클래스
FileDialogPermissionAttribute