FileStream.Handle FileStream.Handle FileStream.Handle FileStream.Handle Property

Definition

Warnung

Diese API ist jetzt veraltet.

Ruft das Dateihandle des Betriebssystems für die Datei ab, die durch das aktuelle FileStream-Objekt gekapselt wird.Gets the operating system file handle for the file that the current FileStream object encapsulates.

public:
 virtual property IntPtr Handle { IntPtr get(); };
[System.Obsolete("Use SafeFileHandle instead")]
[System.Obsolete("This property has been deprecated.  Please use FileStream's SafeFileHandle property instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
[get: System.Security.SecurityCritical]
[System.Obsolete("This property has been deprecated.  Please use FileStream's SafeFileHandle property instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
public virtual IntPtr Handle { get; }
member this.Handle : nativeint
Public Overridable ReadOnly Property Handle As IntPtr

Eigenschaftswert

Das Dateihandle des Betriebssystems für die vom FileStream-Objekt gekapselte Datei oder -1, wenn der FileStream geschlossen wurde.The operating system file handle for the file encapsulated by this FileStream object, or -1 if the FileStream has been closed.

Ausnahmen

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.The caller does not have the required permission.

Hinweise

Diese Eigenschaft ist ein Betriebssystem Handle für die Verwendung mit ReadFile vom Betriebssystem bereitgestellten Systemaufrufen (z. b. unter Windows).This property is an operating system handle for use with operating-system-provided system calls (such as ReadFile on Windows). Es funktioniert nicht mit C-Bibliotheksfunktionen, die einen Dateideskriptor erwarten, z fread. b..It will not work with C library functions that expect a file descriptor, such as fread.

Das Betriebssystem Handle wurde möglicherweise synchron oder asynchron geöffnet, je nachdem, welcher FileStream Konstruktor aufgerufen wurde.The operating system handle might have been opened synchronously or asynchronously, depending on which FileStream constructor was called. Verwenden Sie IsAsync die-Eigenschaft, um zu ermitteln, ob dieses Handle asynchron geöffnet wurde.Use the IsAsync property to discover whether this handle was opened asynchronously. In Win32 bedeutet dies, dass das Handle für überlappende e/a-Vorgänge geöffnet wurde, und ReadFile erfordert WriteFileandere Parameter für und.In Win32, this means the handle was opened for overlapped IO, and it requires different parameters to ReadFile and WriteFile.

Achtung

Daten Beschädigungen können auftreten, wenn FileStream ein erstellt wird, das Handle weitergereicht wird, ein Vorgang den Dateizeiger des Handles verschiebt und FileStream dann wieder verwendet wird.Data corruption might occur if a FileStream is created, its handle is passed, some operation moves the handle's file pointer, and then the FileStream is used again. Mehrere Threads können gleichzeitig nicht sicher in dieselbe Datei schreiben, FileStream und der puffercode geht davon aus, dass er das Handle exklusiv steuert.Multiple threads cannot safely write to the same file simultaneously, and FileStream buffering code assumes that it exclusively controls the handle. FileStreamlöst möglicherweise IOException eine FileStream aus, wenn erkennt, dass ein anderer Prozess den Dateizeiger verschoben hat.FileStream might throw an IOException if FileStream detects that some other process has moved the file pointer. Um dies zu vermeiden, schreiben Sie keine Daten in einen Teil der Datei FileStream , der möglicherweise gepuffert wurde, und stellen Sie den Dateizeiger auf den Speicherort wieder her, den er beim letzten Aufruf von FileStreamMethoden besaß.To avoid this, do not write any data into a portion of the file that FileStream might have buffered, and restore the file pointer to the location it had when methods were last called on FileStream.

Sicherheit

SecurityPermission
für den Zugriff auf nicht verwalteten Code.for the ability to access unmanaged code. Zugehörige Enumeration: UnmanagedCodeSicherheitsaktion: InheritanceDemand.Associated enumeration: UnmanagedCode Security action: InheritanceDemand.

SecurityCriticalAttribute
Erfordert volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer.requires full trust for the immediate caller. Dieser Member kann nicht von teilweise vertrauenswürdigem oder transparentem Code verwendet werden.This member cannot be used by partially trusted or transparent code.

Gilt für:

Siehe auch