SetupInstallServicesFromInfSectionA 関数 (setupapi.h)
[この機能は、[要件] セクションに示されているオペレーティング システムで使用できます。 以降のバージョンでは、変更または使用できない場合があります。 SetupAPI は、アプリケーションのインストールに使用されなくなりました。 代わりに、Windows インストーラーを使用してアプリケーション インストーラーを開発します。 SetupAPI は、デバイス ドライバーのインストールに引き続き使用されます。
SetupInstallServicesFromInfSection 関数は、INF ファイルの Service セクションに記載されている Service Install セクションで指定されているサービスのインストールおよび削除操作を実行します。
この関数の呼び出し元は、Service Control Managerにアクセスし、サービスを変更する権限を持っている必要があります。
構文
WINSETUPAPI BOOL SetupInstallServicesFromInfSectionA(
[in] HINF InfHandle,
[in] PCSTR SectionName,
[in] DWORD Flags
);
パラメーター
[in] InfHandle
サービス セクションを含む INF ファイルへのハンドル。
[in] SectionName
処理する Service セクションの名前。 null で終わる文字列を使用する必要があります。
[in] Flags
指定したセクション内の各サービスのインストールのコントロール。
旗 |
意味 |
-
SPSVCINST_TAGTOFRONT
- 0x001
|
AddService セクション: サービス タグをグループ注文リストの先頭に移動します。
|
-
SPSVCINST_DELETEEVENTLOGENTRY
- 0x004
|
DelService セクション: イベント ログ エントリを削除します。
|
-
SPSVCINST_NOCLOBBER_DISPLAYNAME
- 0x008
|
AddService セクション: 表示名が既に存在する場合は上書きしないでください。
|
-
SPSVCINST_NOCLOBBER_STARTTYPE
- 0x010
|
AddService セクション: サービスが既に存在する場合は、開始型の値を上書きしないでください。
|
-
SPSVCINST_NOCLOBBER_ERRORCONTROL
- 0x020
|
AddService セクション: サービスが既に存在する場合は、エラー制御値を上書きしないでください。
|
-
SPSVCINST_NOCLOBBER_LOADORDERGROUP
- 0x040
|
AddService セクション: ロード注文グループが既に存在する場合は上書きしないでください。
|
-
SPSVCINST_NOCLOBBER_DEPENDENCIES
- 0x080
|
AddService セクション: 依存関係リストが既に存在する場合は上書きしないでください。
|
-
SPSVCINST_NOCLOBBER_DESCRIPTION
- 0x100
|
AddService セクション: このサービスを、インストールされているデバイスのファンクション ドライバーとしてマークします。
|
-
SPSVCINST_STOPSERVICE
- 0x200
|
DelService セクション: サービスを削除する前に、エントリで指定された関連付けられているサービスを停止します。
|
-
SPSVCINST_CLOBBER_SECURITY
- 0x400
|
AddService セクション: サービスがシステムに既に存在する場合、サービスが上書きされるセキュリティ設定。
注 Windows Server 2003 および Windows XP 以降で使用できます。
|
-
SPSVCINST_STARTSERVICE
- 0x800
|
AddService セクション: サービスのインストール後にサービスを開始します。 このフラグを使用して、デバイスのプラグ アンド プレイ (PnP) 関数ドライバーまたはフィルター ドライバーを実装するサービスを開始することはできません。 それ以外の場合は、このフラグを使用して、Service Control Manager (SCM) によって管理されるユーザー モードまたはカーネル モード のサービスを開始できます。
注 Windows Server 2008 および Windows Vista 以降で使用できます。
|
-
SPSVCINST_NOCLOBBER_REQUIREDPRIVILEGES
- 0x1000
|
AddService セクション: サービスがシステムに既に存在する場合は、指定されたサービスの必要な特権を上書きしないでください。
注 Windows Server 2008 R2 および Windows 7 以降で使用できます。
|
戻り値
関数が成功した場合、戻り値は 0 以外です。 この関数は、システムの再起動が必要な場合 ERROR_SUCCESS_REBOOT_REQUIREDを使用して SetLastError を呼び出します。
関数が失敗した場合、戻り値は 0 (ゼロ) です。 拡張エラー情報を取得するには、GetLastError呼び出します。
手記
setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupInstallServicesFromInfSection を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
SetupInstallServicesFromInfSection は、診断情報を SetupAPI アプリケーションのインストール テキスト ログに記録します。 通常、このログ ファイルは既定でオフになっています。 SetupAPI ログ レベルの設定で説明されているように、SetupAPI 値の一部 全般ログ レベルを変更することで有効にすることができます。 パフォーマンス上の理由から、このログ ファイルは問題のトラブルシューティング時にのみ有効にする必要があります。 ログ ファイルが有効になっている場合は、%windir%\inf\setupapi.app.log
で見つけることができます。
必要条件
要件 |
価値 |
サポートされる最小クライアント |
Windows XP [デスクトップ アプリのみ] |
サポートされる最小サーバー |
Windows Server 2003 [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー |
setupapi.h |
ライブラリ |
Setupapi.lib |
DLL |
Setupapi.dll |
API セットの |
ext-ms-win-setupapi-classinstallers-l1-1-2 (Windows 10 バージョン 10.0.14393 で導入) |
関連項目
Functions
の概要
SetupInstallFilesFromInfSection の
SetupInstallFromInfSection
SetupInstallServicesFromInfSectionEx