ファイル管理の制御コード

ファイル管理では、次の制御コードが使用されます。

このセクションの内容

制御コード 説明
FSCTL_ALLOW_EXTENDED_DASD_IO
パーティションの読み取りまたは書き込みの呼び出しで I/O 境界チェックを実行しないようにファイル システム ドライバーに通知します。
FSCTL_CREATE_OR_GET_OBJECT_ID
指定したファイルまたはディレクトリのオブジェクト識別子を取得します。 オブジェクト識別子が存在しない場合は、 FSCTL_CREATE_OR_GET_OBJECT_ID を使用して作成します。
FSCTL_CSV_CONTROL
CSV コントロール操作の結果を取得します。
FSCTL_DELETE_OBJECT_ID
指定したファイルまたはディレクトリからオブジェクト識別子を削除します。
FSCTL_DUPLICATE_EXTENTS_TO_FILE
アプリケーションの代わりにファイル バイトの範囲をコピーするようにファイル システムに指示します。
FSCTL_FILE_LEVEL_TRIM
ファイル内のどの範囲を格納する必要がないかをストレージ システムに示します。
FSCTL_FILESYSTEM_GET_STATISTICS
さまざまなファイル システム パフォーマンス カウンターから情報を取得します。
FSCTL_FILESYSTEM_GET_STATISTICS_EX
さまざまなファイル システム パフォーマンス カウンターから情報を取得します。
このコントロール コードのサポートは、Windows 10で開始されました。
FSCTL_FIND_FILES_BY_SID
作成者の所有者が指定した SID と一致するファイルをディレクトリで検索します。
FSCTL_GET_COMPRESSION
ファイル システムがストリームごとの圧縮をサポートしているボリューム上のファイルまたはディレクトリの現在の圧縮状態を取得します。
FSCTL_GET_NTFS_FILE_RECORD
使用中で、要求されたファイル参照番号の序数以下の最初のファイル レコードを取得します。
FSCTL_GET_OBJECT_ID
指定したファイルまたはディレクトリのオブジェクト識別子を取得します。
FSCTL_GET_REPAIR
NTFS ファイル システムの自己復旧メカニズムに関する情報を取得します。
FSCTL_INITIATE_REPAIR
NTFS ファイル システムをトリガーして、1 つのファイルで自己復旧サイクルを開始します。
FSCTL_MAKE_MEDIA_COMPATIBLE
書き込み 1 回のメディアで開いている UDF セッションを閉じて、メディア ROM に互換性を持たせるようにします。
FSCTL_OPBATCH_ACK_CLOSE_PENDING
クライアント アプリケーションがファイルを閉じる準備ができていることをサーバーに通知します。
FSCTL_OPLOCK_BREAK_ACK_NO_2
ファイルの日和見ロックが解除されようとしていることを示す通知に応答します。 この操作を使用して、ファイルに対するすべての日和見ロックのロックを解除し、ファイルを開いたままにします。
FSCTL_OPLOCK_BREAK_ACKNOWLEDGE
ファイルに対する排他的な日和見ロックが解除されようとしていることを示す通知に応答します。 この操作を使用して、ファイルがレベル 2 の日和見ロックを受け取る必要があることを示します。
FSCTL_OPLOCK_BREAK_NOTIFY
呼び出し元のアプリケーションが日和見ロック中断の完了を待機できるようにします。
FSCTL_QUERY_ALLOCATED_RANGES
ファイルまたは代替ストリームをスキャンして、0 以外のデータを含む可能性がある範囲を探します。
FSCTL_QUERY_ON_DISK_VOLUME_INFO
UDF 固有のボリューム情報を要求します。
FSCTL_QUERY_SPARING_INFO
ボリュームの欠陥管理プロパティを取得します。 UDF ファイル システムに使用されます。
FSCTL_RECALL_FILE
リモート ストレージが管理するストレージ メディア (階層型ストレージ管理ソフトウェア) からファイルを取り消します。
FSCTL_REQUEST_BATCH_OPLOCK
ファイルに対してバッチの日和見ロックを要求します。
FSCTL_REQUEST_FILTER_OPLOCK
ファイルに対してフィルターの日和見ロックを要求します。
FSCTL_REQUEST_OPLOCK
ファイルに対して日和見ロック (oplock) を要求し、oplock の中断が発生したことを確認します。
FSCTL_REQUEST_OPLOCK_LEVEL_1
ファイルに対してレベル 1 の日和見ロックを要求します。
FSCTL_REQUEST_OPLOCK_LEVEL_2
ファイルに対してレベル 2 の日和見ロックを要求します。
FSCTL_SET_COMPRESSION
ファイル システムがファイルごとの圧縮とディレクトリごとの圧縮をサポートするボリューム上のファイルまたはディレクトリの圧縮状態を設定します。
FSCTL_SET_DEFECT_MANAGEMENT
指定したファイルのソフトウェア障害管理状態を設定します。 UDF ファイル システムに使用されます。
FSCTL_SET_OBJECT_ID
指定したファイルまたはディレクトリのオブジェクト識別子を設定します。
FSCTL_SET_OBJECT_ID_EXTENDED
指定したファイルまたはディレクトリのオブジェクト識別子に関連付けられているユーザー データを変更します。
FSCTL_SET_REPAIR
NTFS ファイル システムの自己復旧機能のモードを設定します。
FSCTL_SET_SPARSE
指定されたファイルをスパースとしてマークするか、スパースとしてマークします。 スパース ファイルでは、0 の大きな範囲ではディスク割り当てが必要ない場合があります。
FSCTL_SET_ZERO_DATA
ファイルの指定した範囲をゼロ (0) で塗りつぶします。
FSCTL_SET_ZERO_ON_DEALLOCATION
NTFS ファイル システム ファイル ハンドルの割り当てが解除されたときに、そのクラスターにゼロが入力されている必要があることを示します。
FSCTL_WAIT_FOR_REPAIR
指定した修復が完了したときに を返します。

次の制御コードは、 ファイルの圧縮と圧縮解除に使用されます。

FSCTL_GET_COMPRESSION
FSCTL_SET_COMPRESSION

次のコントロール コードは、 オブジェクト識別子と共に使用されます。

FSCTL_CREATE_OR_GET_OBJECT_ID
FSCTL_DELETE_OBJECT_ID
FSCTL_GET_OBJECT_ID
FSCTL_SET_OBJECT_ID
FSCTL_SET_OBJECT_ID_EXTENDED

和見ロックでは、次の制御コードが使用されます。

FSCTL_OPBATCH_ACK_CLOSE_PENDING
FSCTL_OPLOCK_BREAK_ACK_NO_2
FSCTL_OPLOCK_BREAK_ACKNOWLEDGE
FSCTL_OPLOCK_BREAK_NOTIFY
FSCTL_REQUEST_BATCH_OPLOCK
FSCTL_REQUEST_FILTER_OPLOCK
FSCTL_REQUEST_OPLOCK
FSCTL_REQUEST_OPLOCK_LEVEL_1
FSCTL_REQUEST_OPLOCK_LEVEL_2

スパース ファイルでは、次の制御コードが使用されます。

FSCTL_QUERY_ALLOCATED_RANGES
FSCTL_SET_SPARSE
FSCTL_SET_ZERO_DATA

NTFS 自己復旧メカニズムでは、次の制御コードが使用されます。

FSCTL_GET_REPAIR
FSCTL_INITIATE_REPAIR
FSCTL_SET_REPAIR
FSCTL_WAIT_FOR_REPAIR

UDF では、次の制御コードが使用されます。

FSCTL_MAKE_MEDIA_COMPATIBLE
FSCTL_QUERY_ON_DISK_VOLUME_INFO
FSCTL_QUERY_SPARING_INFO
FSCTL_SET_DEFECT_MANAGEMENT

ディレクトリ管理の制御コード

ボリューム管理の制御コード