次の方法で共有


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 を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント 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