WofSetFileDataLocation 関数 (wofapi.h)
物理ファイルによってバックアップされるファイルからシステム データ プロバイダーによってバックアップされるファイルにファイルを変更するために使用されます。
構文
HRESULT WofSetFileDataLocation(
[in] HANDLE FileHandle,
[in] ULONG Provider,
[in] PVOID ExternalFileInfo,
[in] ULONG Length
);
パラメーター
[in] FileHandle
CreateFile または同様の API で開かれたファイルへのハンドル。
[in] Provider
このファイルをバックアップしているプロバイダーを示します。 現在定義されているプロバイダーは次のとおりです。
WOF_PROVIDER_WIM | ファイルのデータを WIM ファイルから取得する必要があることを示します。 アクセス時に、データは WIM ファイルから透過的に抽出され、アプリケーションに提供されます。 ファイルの内容が変更された場合、データは透過的に展開され、この API が使用されていない場合は、ファイルは同じ物理形式に復元されます。 |
WOF_PROVIDER_FILE | ファイルのデータを圧縮し、ファイル自体と共に格納する必要があることを示します。 アクセス時に、データは透過的に圧縮解除され、アプリケーションに提供されます。 ファイルの内容が変更された場合、データは透過的に展開され、この API が使用されていない場合は、ファイルは同じ物理形式に復元されます。 このプロバイダーにはWindows 10が必要です。 |
[in] ExternalFileInfo
指定したプロバイダーに固有のデータを提供します。 定義されている各プロバイダーのデータ構造は次のとおりです。
WOF_PROVIDER_WIM | WIM_EXTERNAL_FILE_INFO |
WOF_PROVIDER_FILE | WOF_FILE_COMPRESSION_INFO |
[in] Length
プロバイダー固有のデータの長さをバイト単位で指定します。 これは、上記で定義した構造体に対応している必要があります。
WOF_PROVIDER_WIM | sizeof(WIM_EXTERNAL_FILE_INFO) |
WOF_PROVIDER_FILE | sizeof(WOF_FILE_COMPRESSION_INFO) |
戻り値
この関数は、成功または失敗の理由を示す HRESULT を返します。
注釈
WOF_PROVIDER_FILEを使用すると、操作がERROR_COMPRESSION_NOT_BENEFICIALで失敗する可能性があります。 これは、データを圧縮しようとしましたが、ディスク領域が保存されていないため、ファイルが圧縮されなかったことを示します。 ほとんどのアプリケーションでは、これは成功条件として扱うことができます。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | wofapi.h |
Library | Wofutil.lib |
[DLL] | Wofutil.dll |