Поделиться через


FileStream.Handle Свойство

Определение

Внимание!

This property has been deprecated. Please use FileStream's SafeFileHandle property instead. https://go.microsoft.com/fwlink/?linkid=14202

Внимание!

FileStream.Handle has been deprecated. Use FileStream's SafeFileHandle property instead.

Внимание!

This property has been deprecated. Please use FileStream's SafeFileHandle property instead. http://go.microsoft.com/fwlink/?linkid=14202

Возвращает дескриптор файла операционной системы для файла, инкапсулируемого текущим объектом FileStream.

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

Значение свойства

IntPtr

nativeint

Дескриптор файла операционной системы для файла, инкапсулируемого этим объектом FileStream, или значение -1, если объект FileStream закрыт.

Атрибуты

Исключения

У вызывающего объекта отсутствует необходимое разрешение.

Комментарии

Это свойство является дескриптором операционной системы для использования с системными вызовами, предоставляемыми операционной системой (например, ReadFile в Windows). Он не будет работать с функциями библиотеки C, которые ожидают дескриптор файла, например fread.

Дескриптор операционной системы мог быть открыт синхронно или асинхронно в зависимости от того, какой FileStream конструктор был вызван. Используйте свойство , IsAsync чтобы определить, был ли этот дескриптор открыт асинхронно. В Win32 это означает, что дескриптор был открыт для перекрывающихся операций ввода-вывода и требует различных параметров для ReadFile и WriteFile.

Внимание!

Повреждение данных может произойти, если FileStream создается объект , его дескриптор передается, некоторые операции перемещают указатель на файл дескриптора, а затем FileStream используется снова. Несколько потоков не могут безопасно записывать данные в один файл одновременно, и FileStream код буферизации предполагает, что он управляет исключительно дескриптором. FileStream может вызвать исключение , IOException если FileStream обнаруживает, что другой процесс переместил указатель на файл. Чтобы избежать этого, не записывайте данные в часть файла, которая FileStream могла буферизовываться, и восстановите указатель файла в расположение, которое было у него при последнем вызове методов в FileStream.

Применяется к

См. также раздел