FSCTL_SET_ZERO_ON_DEALLOCATION IOCTL (winioctl.h)

NTFS ファイル システムのファイル ハンドルの割り当てが解除されるときに、そのクラスターを 0 で埋めるように指示します。 ファイルが常駐している場合は、非residentに変換されます。 クラスターの割り当てが解除されると、ディスク上のクラスターはゼロになります。 ファイルが削除されると、そのファイルに関連付けられているすべてのクラスターがゼロになります。

この操作を実行するには、次のパラメーターを使用して DeviceIoControl 関数を呼び出します。

BOOL DeviceIoControl(
  (HANDLE) hDevice,                 // handle to device
  FSCTL_SET_ZERO_ON_DEALLOCATION,   // dwIoControlCode
  NULL,                             // lpInBuffer
  0,                                // nInBufferSize
  NULL,                             // lpOutBuffer
  0,                                // nOutBufferSize
  (LPDWORD) lpBytesReturned,        // number of bytes returned
  (LPOVERLAPPED) lpOverlapped       // OVERLAPPED structure
);

解説

Windows 8 および Windows Server 2012 では、このコードは次のテクノロジでサポートされています。

テクノロジ サポートされています
サーバー メッセージ ブロック (SMB) 3.0 プロトコル はい
SMB 3.0 Transparent Failover (TFO) はい
スケールアウト ファイル共有 (SO) を使う SMB 3.0 はい
クラスターの共有ボリューム ファイル システム (CsvFS) はい
Resilient File System (ReFS) いいえ

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
Header winioctl.h (Windows.h を含む)

関連項目