Função QueryServiceConfig2A (winsvc.h)
Recupera os parâmetros de configuração opcionais do serviço especificado.
Sintaxe
BOOL QueryServiceConfig2A(
[in] SC_HANDLE hService,
[in] DWORD dwInfoLevel,
[out, optional] LPBYTE lpBuffer,
[in] DWORD cbBufSize,
[out] LPDWORD pcbBytesNeeded
);
Parâmetros
[in] hService
Um identificador para o serviço. Esse identificador é retornado pela função OpenService ou CreateService e deve ter o direito de acesso SERVICE_QUERY_CONFIG . Para obter mais informações, consulte Segurança do serviço e Direitos de Acesso.
[in] dwInfoLevel
As informações de configuração a serem consultadas. Esse parâmetro pode usar um dos valores a seguir.
Valor | Significado |
---|---|
|
O parâmetro lpInfo é um ponteiro para uma estrutura SERVICE_DELAYED_AUTO_START_INFO .
Windows Server 2003 e Windows XP: Não há suporte para esse valor. |
|
O parâmetro lpBuffer é um ponteiro para uma estrutura SERVICE_DESCRIPTION . |
|
O parâmetro lpBuffer é um ponteiro para uma estrutura SERVICE_FAILURE_ACTIONS . |
|
O parâmetro lpInfo é um ponteiro para uma estrutura SERVICE_FAILURE_ACTIONS_FLAG .
Windows Server 2003 e Windows XP: Não há suporte para esse valor. |
|
O parâmetro lpInfo é um ponteiro para uma estrutura SERVICE_PREFERRED_NODE_INFO .
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse valor. |
|
O parâmetro lpInfo é um ponteiro para uma estrutura SERVICE_PRESHUTDOWN_INFO .
Windows Server 2003 e Windows XP: Não há suporte para esse valor. |
|
O parâmetro lpInfo é um ponteiro para uma estrutura SERVICE_REQUIRED_PRIVILEGES_INFO .
Windows Server 2003 e Windows XP: Não há suporte para esse valor. |
|
O parâmetro lpInfo é um ponteiro para uma estrutura SERVICE_SID_INFO .
Windows Server 2003 e Windows XP: Não há suporte para esse valor. |
|
O parâmetro lpInfo é um ponteiro para uma estrutura SERVICE_TRIGGER_INFO .
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse valor. |
|
O parâmetro lpInfo é um ponteiro SERVICE_LAUNCH_PROTECTED_INFO estrutura.
Nota Esse valor tem suporte começando com Windows 8.1.
|
[out, optional] lpBuffer
Um ponteiro para o buffer que recebe as informações de configuração do serviço. O formato desses dados depende do valor do parâmetro dwInfoLevel .
O tamanho máximo dessa matriz é de 8K bytes. Para determinar o tamanho necessário, especifique NULL para esse parâmetro e 0 para o parâmetro cbBufSize . A função falha e GetLastError retorna ERROR_INSUFFICIENT_BUFFER. O parâmetro pcbBytesNeeded recebe o tamanho necessário.
[in] cbBufSize
O tamanho da estrutura apontada pelo parâmetro lpBuffer , em bytes.
[out] pcbBytesNeeded
Um ponteiro para uma variável que recebe o número de bytes necessários para armazenar as informações de configuração, se a função falhar com ERROR_INSUFFICIENT_BUFFER.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Os códigos de erro a seguir podem ser definidos pelo gerenciador de controle de serviço. Outras podem ser definidas pelas funções do Registro que são chamadas pelo gerenciador de controle de serviço.
Código de retorno | Descrição |
---|---|
|
O identificador não tem o acesso de SERVICE_QUERY_CONFIG correto. |
|
Há mais informações de configuração de serviço do que caberiam no buffer lpBuffer . O número de bytes necessários para obter todas as informações é retornado no parâmetro pcbBytesNeeded . Nada é escrito no lpBuffer. |
|
O identificador especificado é inválido. |
Comentários
A função QueryServiceConfig2 retorna as informações de configuração opcionais armazenadas no banco de dados do gerenciador de controle de serviço para o serviço especificado. Você pode alterar essas informações de configuração usando a função ChangeServiceConfig2 .
Você pode alterar e consultar informações de configuração adicionais usando as funções ChangeServiceConfig e QueryServiceConfig , respectivamente.
Exemplos
Para obter um exemplo, consulte Consultando a configuração de um serviço.
Observação
O cabeçalho winsvc.h define QueryServiceConfig2 como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winsvc.h (inclua Windows.h) |
Biblioteca | Advapi32.lib |
DLL | Advapi32.dll |
Confira também
QueryServiceDynamicInformation
SERVICE_DELAYED_AUTO_START_INFO