다음을 통해 공유


File.OpenHandle 메서드

정의

지정된 경로, 만들기 모드, 읽기/쓰기 및 공유 권한을 사용하여 클래스의 SafeFileHandle 새 instance 초기화하고, 다른 SafeFileHandles가 동일한 파일, 추가 파일 옵션 및 할당 크기에 대해 가질 수 있는 액세스 권한을 초기화합니다.

public static Microsoft.Win32.SafeHandles.SafeFileHandle OpenHandle (string path, System.IO.FileMode mode = System.IO.FileMode.Open, System.IO.FileAccess access = System.IO.FileAccess.Read, System.IO.FileShare share = System.IO.FileShare.Read, System.IO.FileOptions options = System.IO.FileOptions.None, long preallocationSize = 0);
static member OpenHandle : string * System.IO.FileMode * System.IO.FileAccess * System.IO.FileShare * System.IO.FileOptions * int64 -> Microsoft.Win32.SafeHandles.SafeFileHandle
Public Shared Function OpenHandle (path As String, Optional mode As FileMode = System.IO.FileMode.Open, Optional access As FileAccess = System.IO.FileAccess.Read, Optional share As FileShare = System.IO.FileShare.Read, Optional options As FileOptions = System.IO.FileOptions.None, Optional preallocationSize As Long = 0) As SafeFileHandle

매개 변수

path
String

현재 SafeFileHandle instance 캡슐화할 파일의 상대 또는 절대 경로입니다.

mode
FileMode

파일을 열거나 만드는 방법을 결정하는 열거형 값 중 하나입니다. 기본값은 Open

access
FileAccess

파일에 액세스하는 방법을 결정하는 열거형 값의 비트 조합입니다. 기본값은 Read

share
FileShare

프로세스에서 파일을 공유하는 방법을 결정하는 열거형 값의 비트 조합입니다. 기본값은 Read입니다.

options
FileOptions

사용할 선택적 SafeFileHandle 매개 변수를 설명하는 개체입니다.

preallocationSize
Int64

파일의 초기 할당 크기(바이트)입니다. 양수 값은 일반 파일을 만들거나 덮어쓰거나 바꿀 때만 유효합니다. 음수 값은 허용되지 않습니다. 다른 경우(기본값 0 포함)에서는 무시됩니다.

반환

SafeFileHandle 인스턴스입니다.

예외

path이(가) null인 경우

path가 빈 문자열("")이거나 공백만 포함하거나 하나 이상의 잘못된 문자를 포함합니다. -또는- path 는 NTFS 환경에서 , , COM1:LPT1:등과 같은 CON:파일이 아닌 디바이스를 나타냅니다.

path는 비 NTFS 환경에서 , , COM1:LPT1:등과 같은 CON:비 파일 디바이스를 나타냅니다.

preallocationSize가 음수입니다. -또는- mode, access또는 share 에 잘못된 값이 포함되어 있습니다.

예를 들어, modeTruncate 또는 Open인 경우 파일을 찾을 수 없으며 path로 지정된 파일이 없는 경우. 이러한 모드에는 이 파일이 이미 있어야 합니다.

path로 지정한 파일이 이미 있는 경우에 CreateNew를 지정하는 등의 I/O 오류가 발생한 경우 -또는- 디스크가 가득 찼습니다( preallocationSize 제공되고 path 일반 파일을 가리키는 경우). -또는- 파일이 너무 큽니다(제공되고 path 일반 파일을 가리키는 경우preallocationSize).

호출자에게 필요한 권한이 없는 경우

지정된 경로가 잘못되었습니다(예: 매핑되지 않은 드라이브에 있음).

accessWrite 또는 ReadWrite이고 파일 또는 디렉터리가 읽기 전용 액세스로 설정된 경우처럼, 지정된 path에 대해 운영 체제에서 access 요청을 허용하지 않는 경우 -또는- Encrypted 가 에 options대해 지정되었지만 현재 플랫폼에서는 파일 암호화가 지원되지 않습니다.

지정된 경로, 파일 이름 또는 둘 다가 시스템에서 정의한 최대 길이를 초과합니다.

적용 대상