QueryServiceStatus 函式 (winsvc.h)

擷取指定服務的目前狀態。

此函式已被 QueryServiceStatusEx 函式取代。 QueryServiceStatusEx 會 傳回相同的 查詢ServiceStatus 資訊,並新增進程識別碼和服務的其他資訊。

語法

BOOL QueryServiceStatus(
  [in]  SC_HANDLE        hService,
  [out] LPSERVICE_STATUS lpServiceStatus
);

參數

[in] hService

服務的控制碼。 此控制碼是由 OpenServiceCreateService 函式傳回,而且必須具有SERVICE_QUERY_STATUS存取權限。 如需詳細資訊,請參閱 服務安全性和存取權限

[out] lpServiceStatus

接收狀態資訊的 SERVICE_STATUS 結構的指標。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

服務控制管理員可以設定下列錯誤碼。 服務控制管理員所呼叫的登錄函式可以設定其他錯誤碼。

傳回碼 描述
ERROR_ACCESS_DENIED
控制碼沒有SERVICE_QUERY_STATUS存取權限。
ERROR_INVALID_HANDLE
控制代碼無效。

備註

QueryServiceStatus函式會傳回向服務控制管理員報告的最新服務狀態資訊。 如果服務剛變更其狀態,可能尚未更新服務控制管理員。

規格需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 winsvc.h (包括 Windows.h)
程式庫 Advapi32.lib
Dll Advapi32.dll

另請參閱

ControlService

CreateService

OpenService

QueryServiceStatusEx

SERVICE_STATUS

服務函式

服務啟動

SetServiceStatus