次の方法で共有


SetupOpenInfFileA 関数 (setupapi.h)

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

SetupOpenInfFile 関数は INF ファイルを開き、それにハンドルを返します。

構文

WINSETUPAPI HINF SetupOpenInfFileA(
  [in] PCSTR FileName,
  [in] PCSTR InfClass,
  [in] DWORD InfStyle,
  [in] PUINT ErrorLine
);

パラメーター

[in] FileName

開く INF ファイルの名前 (および省略可能なパス) を含む null で終わる文字列へのポインター。 ファイル名にパス区切り文字が含まれていない場合は、最初に %windir%\inf ディレクトリ、次に %windir%\system32 ディレクトリで検索されます。 ファイル名にパス区切り文字が含まれている場合は、完全なパス指定であると見なされ、それ以上の処理は実行されません。

[in] InfClass

必要な INF ファイルのクラスを含む null で終わる文字列への省略可能なポインター。 この文字列は、Version セクションの Class 値 (Class=Net など) と一致する必要があります。 Class 値にエントリがなく、Version セクションに ClassGUID のエントリがある場合、その GUID の対応するクラス名が取得され、比較に使用されます。

[in] InfStyle

開くか検索する INF ファイルのスタイル。 このパラメーターには、次のフラグの組み合わせを指定できます。

INF_STYLE_OLDNT

従来の INF ファイル形式。

INF_STYLE_WIN4

Windows INF ファイル形式。

[in] ErrorLine

この関数が INF ファイルの読み込み中にエラーが発生した (1 から始まる) 行番号を返す変数への省略可能なポインター。 この値は、通常、GetLastError がERROR_NOT_ENOUGH_MEMORYを返さない場合にのみ信頼できます。 メモリ不足状態が発生した場合、ErrorLine は 0 である可能性があります。

戻り値

この関数は、開かれた INF ファイルが成功した場合にハンドルを返します。 それ以外の場合、戻り値はINVALID_HANDLE_VALUE。 拡張エラー情報は、GetLastErrorの呼び出しによって取得できます。

備考

INF ファイルの種類が InfClass一致しないために読み込みが失敗した場合、関数はINVALID_HANDLE_VALUEを返し、GetLastError 呼び出しはERROR_CLASS_MISMATCHを返します。

複数の INF ファイル スタイルが指定されている場合、開いた INF ファイルのスタイルは、SetupGetInfInformation 関数を呼び出すことによって決定できます。

同じクラス名のクラス GUID が複数存在する可能性があるため、特定のクラスの INF ファイル (つまり、特定のクラス GUID) に関心がある呼び出し元は、SetupQueryInfVersionInformation呼び出して、INF ファイルから ClassGUID 値を取得する必要があります。

レガシ INF ファイルの場合、InfClass 文字列は、INF ファイルの Identification セクションの OptionType 値 (OptionType=NetAdapter など) で指定された型と一致する必要があります。

手記

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

必要条件

要件 価値
サポートされる最小クライアント Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー setupapi.h
ライブラリ Setupapi.lib
DLL Setupapi.dll
API セットの ext-ms-win-setupapi-inf-l1-1-0 (Windows 8 で導入)

関連項目

Functions

の概要

SetupCloseInfFile の

SetupGetInfInformation の

SetupOpenAppendInfFile