File.OpenHandle メソッド

定義

指定したパス、作成モード、読み取り/書き込みおよび共有のアクセス許可を持つクラスの SafeFileHandle 新しいインスタンスを初期化します。他の 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 のインスタンスがカプセル化するファイルの相対パスまたは絶対パス。

mode
FileMode

ファイルを開く方法または作成する方法を決定する列挙値の 1 つ。 既定値は Open

access
FileAccess

ファイルへのアクセス方法を決定する列挙値のビットごとの組み合わせ。 既定値は Read

share
FileShare

ファイルがどのようにプロセスに共有されるかを決定する列挙値のビットごとの組み合わせ。 既定値は Read です。

options
FileOptions

使用する省略可能な SafeFileHandle パラメーターを記述するオブジェクト。

preallocationSize
Int64

ファイルの初期割り当てサイズ (バイト単位)。 正の値は、通常のファイルが作成、上書き、または置換されている場合にのみ有効です。 負の値は使用できません。 それ以外の場合 (既定値の 0 を含む) は無視されます。

戻り値

SafeFileHandle

SafeFileHandle のインスタンス。

例外

pathnullです。

path は空の文字列 ("") であるか、空白のみで構成されているか、または 1 つ以上の正しくない文字を含んでいます。 または、 path NTFS 環境の CON:COM1:LPT1:など、ファイル以外のデバイスを参照します。

path は、非 NTFS 環境の CON:COM1:LPT1:など、ファイル以外のデバイスを指します。

preallocationSize が負の値です。 または、modeaccessshare無効な値を含みます。

ファイルが見つかりません。たとえば、modeTruncate または Open の場合に、path で指定されたファイルが存在しません。 これらのモードではファイルが既に存在している必要があります。

path で指定したファイルが既に存在している場合に CreateNew が指定されているなどの I/O エラーが発生しました。 または、ディスクがいっぱいでした (ディスクが提供され、path通常のファイルを指していた場合preallocationSize)。 または、ファイルが大きすぎた (指定され、path通常のファイルを指していた場合preallocationSize)。

呼び出し元に、必要なアクセス許可がありません。

マップされていないドライブにあるなど、指定されたパスが無効です。

access要求されたオペレーティング システムでは、指定pathされたオペレーティング システムでは、指定された場合や、ファイルまたはReadWriteディレクトリがWrite読み取り専用アクセス用に設定されている場合accessなど、許可されません。 または、 Encrypted 現在の optionsプラットフォームではファイル暗号化がサポートされていません。

指定したパス、ファイル名、またはその両方がシステム定義の最大長を超えています。

適用対象