Função QueryServiceConfigA (winsvc.h)
Recupera os parâmetros de configuração do serviço especificado. Parâmetros de configuração opcionais estão disponíveis usando a função QueryServiceConfig2.
Sintaxe
BOOL QueryServiceConfigA(
[in] SC_HANDLE hService,
[out, optional] LPQUERY_SERVICE_CONFIGA lpServiceConfig,
[in] DWORD cbBufSize,
[out] LPDWORD pcbBytesNeeded
);
Parâmetros
[in] hService
Um identificador para o serviço. Esse identificador é retornado pela função do OpenService ou CreateService e deve ter o acesso SERVICE_QUERY_CONFIG correto. Para obter mais informações, consulte de Direitos de Acesso e Segurança do Serviço.
[out, optional] lpServiceConfig
Um ponteiro para um buffer que recebe as informações de configuração do serviço. O formato dos dados é uma estrutura QUERY_SERVICE_CONFIG.
O tamanho máximo dessa matriz é de 8 K bytes. Para determinar o tamanho necessário, especifique NULL para esse parâmetro e 0 para o parâmetro cbBufSize. A função falhará e GetLastError retornará ERROR_INSUFFICIENT_BUFFER. O parâmetro pcbBytesNeededed receberá o tamanho necessário.
[in] cbBufSize
O tamanho do buffer apontado pelo parâmetro lpServiceConfig, em bytes.
[out] pcbBytesNeeded
Um ponteiro para uma variável que recebe o número de bytes necessários para armazenar todas as informações de configuração, se a função falhar com ERROR_INSUFFICIENT_BUFFER.
Valor de retorno
Se a função for bem-sucedida, o valor retornado não será 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 SERVICE_QUERY_CONFIG correto. |
|
Há mais informações de configuração de serviço do que caberia no buffer de lpServiceConfig |
|
O identificador especificado é inválido. |
Observações
A função queryServiceConfig
Se o serviço estava em execução quando as informações de configuração foram alteradas pela última vez, as informações retornadas por QueryServiceConfig não refletirão a configuração atual do serviço. Em vez disso, ele refletirá a configuração do serviço quando ele for executado na próxima execução. A chave DisplayName é uma exceção a isso. Quando a chave DisplayName é alterada, ela entra em vigor imediatamente, independentemente de o serviço estiver em execução.
Exemplos
Para obter um exemplo, consulte Consultando ode Configuração de um Serviço.
Nota
O cabeçalho winsvc.h define QueryServiceConfig como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows XP [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2003 [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | winsvc.h (incluir Windows.h) |
biblioteca | Advapi32.lib |
de DLL |
Advapi32.dll |
Consulte também
QueryServiceDynamicInformation
de Configuração de Serviço do