次の方法で共有


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

こちらもご覧ください

FSCTL_GET_EXTERNAL_BACKING