estrutura SERVICE_FAILURE_ACTIONSA (winsvc.h)

Representa a ação que o controlador de serviço deve executar em cada falha de um serviço. Um serviço é considerado com falha quando termina sem relatar uma status de SERVICE_STOPPED para o controlador de serviço.

Para configurar circunstâncias adicionais sob as quais as ações de falha devem ser executadas, consulte SERVICE_FAILURE_ACTIONS_FLAG.

Sintaxe

typedef struct _SERVICE_FAILURE_ACTIONSA {
  DWORD     dwResetPeriod;
  LPSTR     lpRebootMsg;
  LPSTR     lpCommand;
  DWORD     cActions;
  SC_ACTION *lpsaActions;
} SERVICE_FAILURE_ACTIONSA, *LPSERVICE_FAILURE_ACTIONSA;

Membros

dwResetPeriod

O tempo após o qual redefinir a contagem de falhas para zero se não houver falhas, em segundos. Especifique INFINITE para indicar que esse valor nunca deve ser redefinido.

lpRebootMsg

A mensagem a ser transmitida aos usuários do servidor antes de reinicializar em resposta à SC_ACTION_REBOOT ação do controlador de serviço.

Se esse valor for NULL, a mensagem de reinicialização ficará inalterada. Se o valor for uma cadeia de caracteres vazia (""), a mensagem de reinicialização será excluída e nenhuma mensagem será transmitida.

Esse membro pode especificar uma cadeia de caracteres localizada usando o seguinte formato:

@[path]dllname,-strID

A cadeia de caracteres com o identificador strID é carregada de dllname; o caminho é opcional. Para obter mais informações, consulte RegLoadMUIString.

Windows Server 2003 e Windows XP: Não há suporte para cadeias de caracteres localizadas até o Windows Vista.

lpCommand

A linha de comando do processo para a função CreateProcess a ser executada em resposta à ação do controlador de serviço SC_ACTION_RUN_COMMAND . Esse processo é executado na mesma conta que o serviço.

Se esse valor for NULL, o comando permanecerá inalterado. Se o valor for uma cadeia de caracteres vazia (""), o comando será excluído e nenhum programa será executado quando o serviço falhar.

cActions

O número de elementos na matriz lpsaActions .

Se esse valor for 0, mas lpsaActions não for NULL, o período de redefinição e a matriz de ações de falha serão excluídos.

lpsaActions

Um ponteiro para uma matriz de estruturas SC_ACTION .

Se esse valor for NULL, os membros cActions e dwResetPeriod serão ignorados.

Comentários

O gerenciador de controle de serviço conta o número de vezes que cada serviço falhou desde que o sistema foi inicializado. A contagem será redefinida para 0 se o serviço não tiver falhado em segundos dwResetPeriod . Quando o serviço falha pela vez, o controlador de serviço executa a ação especificada no elemento [N-1] da matriz lpsaActions . Se N for maior que cActions, o controlador de serviço repetirá a última ação na matriz.

Observação

O cabeçalho winsvc.h define SERVICE_FAILURE_ACTIONS 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

Requisito Valor
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]
Cabeçalho winsvc.h (incluir Windows.h)

Confira também

ChangeServiceConfig2

CreateProcess

QueryServiceConfig2

SC_ACTION

SERVICE_FAILURE_ACTIONS_FLAG