次の方法で共有


SetupGetSourceFileLocationA 関数 (setupapi.h)

[この機能は、[要件] セクションに示されているオペレーティング システムで使用できます。 以降のバージョンでは、変更または使用できない場合があります。 SetupAPI は、アプリケーションのインストールに使用されなくなりました。 代わりに、Windows インストーラーを使用してアプリケーション インストーラーを開発します。 SetupAPI は、デバイス ドライバーのインストールに引き続き使用されます。

SetupGetSourceFileLocation 関数は、INF ファイルに一覧表示されているソース ファイルの場所を取得します。

構文

WINSETUPAPI BOOL SetupGetSourceFileLocationA(
  [in]      HINF        InfHandle,
  [in]      PINFCONTEXT InfContext,
  [in]      PCSTR       FileName,
  [in, out] PUINT       SourceId,
  [in, out] PSTR        ReturnBuffer,
  [out]     DWORD       ReturnBufferSize,
  [in, out] PDWORD      RequiredSize
);

パラメーター

[in] InfHandle

SourceDisksNames および SourceDisksFiles セクションを含む INF ファイルを処理します。 ユーザーのシステムにプラットフォーム固有のセクションが存在する場合 (SourceDisksNames.x86 、SourceDisksFiles.x86など)、プラットフォーム固有のセクションが使用されます。

[in] InfContext

完全なソース パスを取得する Copy Files セクション内の行のコンテキストへのオプションのポインター。 このパラメーターが NULL場合、InfHandleで指定された INF ファイルの SourceDisksFiles セクションで FileName 検索されます。

[in] FileName

完全なソースの場所を返すファイル名 (パスなし) を含む null-terminated 文字列への省略可能なポインター。 このパラメーターは NULLできますが、FileName または InfContext 指定する必要があります。

[in, out] SourceId

INF ファイルの SourceDisksNames セクションから、ファイルが配置されているメディアのソース識別子を受け取る変数へのポインター。

[in, out] ReturnBuffer

相対ソース パスを受け取るバッファーへの省略可能なポインター。 ソース パスにはファイル名自体は含まれません。また、ドライブ文字/ネットワーク共有名も含まれません。 パスは円記号 () で開始または終了しないため、空の文字列はルート ディレクトリを指定します。 null-terminated 文字列バッファーを使用する必要があります。 null-terminated 文字列は、宛先バッファーのサイズを超えないようにする必要があります。 関数を 1 回呼び出して、必要なバッファー サイズを取得し、必要なメモリを割り当ててから、もう一度関数を呼び出してデータを取得できます。 この手法を使用すると、バッファー サイズが不十分なため、エラーを回避できます。 「解説」セクションを参照してください。 このパラメーターは NULLできます。

[out] ReturnBufferSize

ReturnBuffer指すバッファーのサイズ (文字単位)。 この数値には、null ターミネータが含まれます。

[in, out] RequiredSize

ReturnBuffer パラメーターが指すバッファーに必要なサイズを受け取る変数への省略可能なポインター (文字単位)。 この数値には、null ターミネータが含まれます。 必要なサイズが ReturnBufferSizeで指定 値より大きい場合、関数は失敗し、GetLastError はERROR_INSUFFICIENT_BUFFERを返します。

戻り値

関数が成功した場合、戻り値は 0 以外の値になります。

関数が失敗した場合、戻り値は 0 です。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

この関数が null ReturnBuffer で呼び出され、ReturnBufferSize が 0 の場合、この関数は、指定されたデータを保持するために必要なバッファー サイズ RequiredSizeが指す変数に格納します。 この関数が成功した場合、戻り値は 0 以外の値になります。 それ以外の場合、戻り値は 0 で、GetLastError呼び出すことによって拡張エラー情報を取得できます。

手記

setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupGetSourceFileLocation を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー setupapi.h
ライブラリ Setupapi.lib
DLL Setupapi.dll

関連項目

Functions

の概要

SetupGetSourceFileSize の

SetupGetSourceInfo の