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 オブジェクトによってカプセル化されるファイルのオペレーティング システム ファイル ハンドル。または FileStream が閉じられている場合は -1。

属性

例外

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

注釈

このプロパティは、オペレーティング システムが提供するシステム呼び出し (Windows など ReadFile ) で使用するためのオペレーティング システム ハンドルです。 これは、 などの freadファイル記述子を必要とする C ライブラリ関数では機能しません。

オペレーティング システム ハンドルは、呼 FileStream び出されたコンストラクターに応じて、同期または非同期で開かれた可能性があります。 プロパティを IsAsync 使用して、このハンドルが非同期的に開かれたかどうかを検出します。 Win32 では、これは、重複する IO に対してハンドルが開かれたこと、および に対して異なるパラメーターを ReadFile 必要とすることを意味します WriteFile

注意事項

が作成され、そのハンドルが渡され、何らかの操作によってハンドルのファイル ポインターが移動されFileStream、 が再度使用されると、データ破損が発生FileStreamする可能性があります。 複数のスレッドが同じファイルに同時に安全に書き込むことができず、 FileStream バッファー コードはハンドルを排他的に制御することを前提としています。 FileStream は、 IOException 他のプロセスがファイル ポインターを移動したことを検出した場合 FileStream に をスローする可能性があります。 これを回避するには、バッファーに格納されている可能性があるファイル FileStream の一部にデータを書き込まず、メソッドが で最後に呼び出 FileStreamされたときの場所にファイル ポインターを復元します。

適用対象

こちらもご覧ください