Sdílet prostřednictvím


File.OpenHandle Metoda

Definice

Inicializuje novou instanci SafeFileHandle třídy se zadanou cestou, režimem vytváření, oprávněním ke čtení/zápisu a sdílení, přístup ke stejnému souboru, dalším možnostem souboru a velikosti přidělení můžou mít ostatní 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

Parametry

path
String

Relativní nebo absolutní cesta k souboru, který bude aktuální SafeFileHandle instance zapouzdřovat.

mode
FileMode

Jedna z hodnot výčtu, která určuje, jak soubor otevřít nebo vytvořit. Výchozí hodnotou je Open.

access
FileAccess

Bitové kombinace hodnot výčtu, která určuje, jak lze k souboru přistupovat. Výchozí hodnotou je Read.

share
FileShare

Bitové kombinace hodnot výčtu, která určuje, jak bude soubor sdílen procesy. Výchozí hodnota je Read.

options
FileOptions

Objekt, který popisuje volitelné SafeFileHandle parametry, které se mají použít.

preallocationSize
Int64

Počáteční velikost přidělení souboru v bajtech Kladná hodnota je platná pouze v případě, že se vytváří, přepisuje nebo nahrazuje běžný soubor. Záporné hodnoty nejsou povoleny. V jiných případech (včetně výchozí hodnoty 0) se tato hodnota ignoruje.

Návraty

Instance SafeFileHandle .

Výjimky

path je null.

path je prázdný řetězec (""), obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných znaků. -or- path označuje jiné než souborové zařízení, například CON:, COM1:, LPT1:atd. v prostředí NTFS.

path odkazuje na jiné než souborové zařízení, například CON:, COM1:, LPT1:atd. v prostředí bez ntfs.

preallocationSize je negativní. -or- mode, accessnebo share obsahují neplatnou hodnotu.

Soubor nelze najít, například když mode je Truncate nebo Open, a soubor zadaný nástrojem path neexistuje. Soubor už musí v těchto režimech existovat.

Došlo k V/V chybě, například určení CreateNew , kdy soubor zadaný nástrojem path již existuje. -nebo- Disk byl plný (když preallocationSize byl poskytnut a path odkazoval na běžný soubor). -nebo- Soubor byl příliš velký (když preallocationSize byl zadaný a path odkazoval na běžný soubor).

Volající nemá požadované oprávnění.

Zadaná cesta je neplatná, například na nenamapované jednotce.

Požadovaný access soubor není povolen operačním systémem pro zadaný pathsoubor , například když access je Write nebo ReadWrite a soubor nebo adresář je nastaven pro přístup jen pro čtení. Parametr -or je Encrypted zadaný pro options, ale šifrování souborů se na aktuální platformě nepodporuje.

Zadaná cesta, název souboru nebo obojí překračují maximální délku definovanou systémem.

Platí pro