WofIsExternalFile 関数 (wofapi.h)
ファイルが物理ファイルによってバックアップされているか、システム データ プロバイダーによってバックアップされているかを判断するために使用され、必要に応じて、ファイルに関するプロバイダーや追加データを示します。
構文
HRESULT WofIsExternalFile(
[in] LPCWSTR FilePath,
[out, optional] PBOOL IsExternalFile,
[out, optional] PULONG Provider,
[out, optional] PVOID ExternalFileInfo,
[in, out, optional] PULONG BufferLength
);
パラメーター
[in] FilePath
バッキング状態が必要なファイルへのパスを指定します。
[out, optional] IsExternalFile
必要に応じて、BOOL 値を指します。 正常に戻ると、オブジェクトが外部でサポートされている場合は TRUE、物理ファイルの場合は FALSE になります。
[out, optional] Provider
必要に応じて、ULONG 値を指します。 正常に戻ると、この値は、このオブジェクトを外部からバックするプロバイダーに設定されます。 現在定義されているプロバイダーは次のとおりです。
WOF_PROVIDER_WIM | ファイルのデータが別の WIM ファイルに存在することを示します。 アクセス時に、データは透過的に抽出され、圧縮解除され、アプリケーションに提供されます。 ファイルの内容が変更されると、データは透過的に圧縮解除され、ファイルは通常のファイルに復元されます。 |
WOF_PROVIDER_FILE | ファイルのデータを圧縮し、ファイル自体と共に格納する必要があることを示します。 アクセス時に、データは透過的に圧縮解除され、アプリケーションに提供されます。 ファイルの内容が変更されると、データは透過的に圧縮解除され、ファイルは通常のファイルに復元されます。 このプロバイダーにはWindows 10が必要です。 |
[out, optional] ExternalFileInfo
必要に応じて、呼び出し元に割り当てられたバッファーを指します。 正常に戻ると、このバッファーにはファイルの状態に関する追加情報が含まれます。 この値を指定する場合は、 BufferLength も指定する必要があります。 定義されている各プロバイダーのデータ構造は次のとおりです。
WOF_PROVIDER_WIM | WIM_EXTERNAL_FILE_INFO |
WOF_PROVIDER_FILE | WOF_FILE_COMPRESSION_INFO |
[in, out, optional] BufferLength
必要に応じて、 ExternalFileInfo で指定されたバッファーの長さを含む値を指します。 戻り値は、使用されるバッファーのサイズ、または必要なバッファーのサイズに設定されます。 バッファーの長さが不十分な場合、この関数は必要なサイズを示して成功し、 ExternalFileInfo にバッファーを設定しません。 この長さは、上記で定義した構造体のいずれかに対応している必要があります。
WOF_PROVIDER_WIM | sizeof(WIM_EXTERNAL_FILE_INFO) |
WOF_PROVIDER_FILE | sizeof(WOF_FILE_COMPRESSION_INFO) |
戻り値
この関数は、成功または失敗の理由を示す HRESULT を返します。 ExternalFileInfo で指定されたバッファーのサイズが正しくない場合、関数は S_OKを返し、BufferLength に必要なバッファー サイズを示します。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | wofapi.h |
Library | Wofutil.lib |
[DLL] | Wofutil.dll |