Defina seu serviço como Automático (início diferido)? Isso atrasará em 2 minutos até que o último serviço automático seja iniciado.
Eu tenho um serviço que tenta se conectar a um banco de dados MSSQL na inicialização, mas quando eu inicio o computador ele gera um erro porque não é capaz de se conectar ao banco de dados. Isso acontece porque o banco de dados específico ainda não foi iniciado pelo MSSQL Service, embora meu serviço tenha um conjunto de dependências para o Serviço MSSQL.
O que posso fazer? Alguma solução?
Eu poderia adicionar um atraso ao meu serviço de digamos 5 minutos, mas essa seria a última solução que eu usaria, pois não é adequada do meu ponto de vista.
LE: Esqueci de dizer que ele deve funcionar no Windows XP SP3, tentei com atraso automático, mas não funciona.
Defina o serviço que você deseja atrasar para manual.
Agora vá para o seu console do SQL Server e siga este: link
Crie um comando como este:
xp_cmdshell 'net start yourservice'
Espero que isso ajude, não posso testar aqui. Eu acho que precisa do agente sql server para isso.
Pode-se Agendar uma tarefa no Windows XP que iniciará um arquivo em lote que será iniciado o serviço sempre que quiser, em relação a um evento desencadeador.
O evento de ativação pode ser simples, como At Logon
, que certamente só acontecerá depois
um certo atraso.
Para mais controle, ao criar a tarefa Clique em Abrir nas propriedades avançadas da tarefa antes de clicar em Concluir. Na caixa de diálogo Propriedades da tarefa, pode-se especificar mais condições: