QueryServiceStatus 関数 (winsvc.h)
指定したサービスの現在の状態を取得します。
この関数は QueryServiceStatusEx 関数に置き換わりました。 QueryServiceStatusEx は 、 QueryServiceStatus が返すのと同じ情報を返し、プロセス識別子とサービスの追加情報を追加します。
構文
BOOL QueryServiceStatus(
[in] SC_HANDLE hService,
[out] LPSERVICE_STATUS lpServiceStatus
);
パラメーター
[in] hService
サービスへのハンドル。 このハンドルは OpenService または CreateService 関数によって返され、SERVICE_QUERY_STATUSアクセス権が必要です。 詳細については、「 サービス セキュリティとアクセス権」を参照してください。
[out] lpServiceStatus
状態情報を受け取る SERVICE_STATUS 構造体へのポインター。
戻り値
関数が成功すると、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
サービス コントロール マネージャーでは、次のエラー コードを設定できます。 その他のエラー コードは、サービス コントロール マネージャーによって呼び出されるレジストリ関数によって設定できます。
リターン コード | 説明 |
---|---|
|
ハンドルにSERVICE_QUERY_STATUSアクセス権がありません。 |
|
ハンドルが正しくありません。 |
解説
QueryServiceStatus 関数は、サービス コントロール マネージャーに報告された最新のサービス状態情報を返します。 サービスの状態が変更されたばかりの場合は、サービス コントロール マネージャーがまだ更新されていない可能性があります。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | winsvc.h (Windows.h を含む) |
Library | Advapi32.lib |
[DLL] | Advapi32.dll |