MOVE_FILE_DATA 構造体 (winioctl.h)
FSCTL_MOVE_FILE 制御コードの入力データを格納します。
構文
typedef struct {
HANDLE FileHandle;
LARGE_INTEGER StartingVcn;
LARGE_INTEGER StartingLcn;
DWORD ClusterCount;
} MOVE_FILE_DATA, *PMOVE_FILE_DATA;
メンバー
FileHandle
移動するファイルへのハンドル。
ファイルへのハンドルを取得するには、 CreateFile を使用します。
ファイルが暗号化されている場合、ハンドルにはFILE_READ_DATA、FILE_WRITE_DATA、FILE_APPEND_DATA、またはFILE_EXECUTEアクセス権が必要です。 詳細については、「 ファイル のセキュリティとアクセス権」を参照してください。
StartingVcn
移動する最初のクラスターの VCN (ファイルの先頭を基準としたクラスター番号)。
StartingLcn
VCN の移動先となる LCN (ボリューム上のクラスター番号)。
ClusterCount
移動するクラスターの数。
注釈
この構造体に入力するデータを取得するには、 DeviceIoControl 関数と FSCTL_GET_RETRIEVAL_POINTERS コントロール コードを使用します。
FAT ファイル システム ボリューム上のディレクトリの最初のクラスターを移動できません。
可能なときは、互いに相対的に配置された 16 キロバイト (KB) 単位のブロックで、データを移動してください。 これにより、シャドウ コピーが有効になっているときのコピー オン ライトのオーバーヘッドが軽減されます。これは、次の条件が発生すると、シャドウ コピー領域が増大し、パフォーマンスが低下するためです。
- 移動要求のブロック サイズが 16 KB 以下であること。
- 移動の差分が 16 KB 単位ではないこと。
シャドウ コピーに関する詳細については、ボリューム シャドウ コピー サービスに関する記事を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
Header | winioctl.h (Windows.h を含む) |