Windows Win32Serviçosadvapi32.dll
QueryServiceStatusEx
Como QueryServiceStatus, mas retorna informações estendidas, incluindo o PID do processo do serviço.
Descrição
Forma recomendada de consultar o estado de um serviço em código novo.
Header:
winsvc.hDLL: advapi32.dllAssinatura
BOOL QueryServiceStatusEx(
SC_HANDLE hService,
SC_STATUS_TYPE InfoLevel,
LPBYTE lpBuffer,
DWORD cbBufSize,
LPDWORD pcbBytesNeeded
);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| hService | SC_HANDLE | Handle do serviço. |
| InfoLevel | SC_STATUS_TYPE | Deve ser SC_STATUS_PROCESS_INFO. |
| lpBuffer | LPBYTE | Recebe uma struct SERVICE_STATUS_PROCESS. |
| cbBufSize | DWORD | Tamanho de `lpBuffer`. |
| pcbBytesNeeded | LPDWORD | Recebe o tamanho real necessário. |
Valor de retorno
Diferente de zero em sucesso; 0 em erro (consulte GetLastError).
Códigos de erro (GetLastError)
- ERROR_INSUFFICIENT_BUFFER(122)
- O buffer de dados é pequeno demais.
- ERROR_ACCESS_DENIED(5)
- Acesso negado.