SetupGetFileCompressionInfoW 関数 (setupapi.h)
[この機能は、[要件] セクションに示されているオペレーティング システムで使用できます。 以降のバージョンでは、変更または使用できない場合があります。 SetupAPI は、アプリケーションのインストールに使用されなくなりました。 代わりに、Windows インストーラーを使用してアプリケーション インストーラーを開発します。 SetupAPI は、デバイス ドライバーのインストールに引き続き使用されます。
SetupGetFileCompressionInfo 関数は、物理ファイルが圧縮されているかどうかを調べて、圧縮されていないターゲット ファイルの完全なパス、サイズ、およびサイズを取得します。
この関数は廃止され、SetupGetFileCompressionInfoExに置き換えられました。 SetupGetFileCompressionInfo
WINSETUPAPI DWORD SetupGetFileCompressionInfoW(
[in] PCWSTR SourceFileName,
[in, out] PWSTR *ActualSourceFileName,
[in, out] PDWORD SourceFileSize,
[in, out] PDWORD TargetFileSize,
[in, out] PUINT CompressionType
);
[in] SourceFileName
情報が必要なファイルのファイル名。 ファイルが名前付きとまったく同じソース メディアに見つからない場合、ファイルは最大 2 つの代替の "圧縮形式" 名で検索されます。 たとえば、ファイルが F:\x86\cmd.exe されていて見つからない場合、F:\mpis\cmd.ex_ が検索され、見つからない場合は F:\x86\cmd.ex$ の検索が行われます。 null で終わる文字列を使用する必要があります。
[in, out] ActualSourceFileName
見つけることができたファイルの完全なパスを受け取る変数へのポインター。 呼び出し元は、LocalFreeへの呼び出し
[in, out] SourceFileSize
この関数が現在の形式のファイルのサイズを返す変数へのポインター。これは、ActualSourceFileNameによって指定されたファイルの現在のサイズ
[in, out] TargetFileSize
この関数が圧縮されていないかコピーされるときにファイルが占有するサイズを返す変数へのポインター。 ファイルが圧縮されていない場合、この値は SourceFileSizeと同じになります。 サイズは、ファイルを調べることによって決定されます。INF ファイルから取得されません。 ターゲット ファイル サイズは、関数がNO_ERRORを返す場合にのみ有効です。
[in, out] CompressionType
この関数が ActualSourceFileNameで使用される圧縮の種類を示す値
ソース ファイルは、認識された圧縮アルゴリズムでは圧縮されません。
ソース ファイルは LZ 圧縮で圧縮されます。
ソース ファイルは MSZIP 圧縮で圧縮されます。
この関数は、ファイル検索の結果を示す システム エラー コード を返します。 エラー コードには、次のいずれかの値を指定できます。
拡張エラー情報を取得するには、GetLastError
SetupGetFileCompressionInfo
SetupGetFileCompressionInfo
SetupAPI.dll のバージョンが 5.0.2195 未満の場合、呼び出し元は、エクスポートされた関数
SetupAPI.dllから MyFree 関数を取得する方法の例を次に示します。
typedef VOID (WINAPI* MYFREEFUNC)(LPVOID lpBuff);
MYFREEFUNC MyFree;
HMODULE hDll=NULL;
hDll = GetModuleHandle("SETUPAPI.DLL");
MyFree = (MYFREEFUNC)GetProcAddress(hDll, "MyFree");
...
other code here to prepare file queue
...
PTSTR lpActualSourceFileName;
SetupGetFileCompressionInfo(...,&lpActualSourceFileName,...,...,...);
...
MyFree(lpActualSourceFileName);
注意
setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupGetFileCompressionInfo を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows XP [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows Server 2003 [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | setupapi.h |
ライブラリ | Setupapi.lib |
DLL | Setupapi.dll |
SetupDecompressOrCopyFile の