none
Serviço do windows + C# RRS feed

  • Pergunta

  • Pessoal bom dia a todos.

    Pessoal tenho uma dúvida não tão complicada. Eu não consegui criar um serviço onde com o decorrer de 1min apareça uma mensagem na tela. Não consigo importar System.Windows.WindowsForm;

    Provavelmente não vou conseguir com MessageBox...

    Alguma sugestão??

    Agradeço a atenção.

    segunda-feira, 23 de fevereiro de 2015 12:46

Todas as Respostas

  • Luiz,

    O que vc pode fazer é criar um projeto Windows Forms convencional e agendar a execução do mesmo a cada 1 min.

    Desta forma, acredito que vc conseguirá superar esta limitação.

    Abs

    segunda-feira, 23 de fevereiro de 2015 12:50
  • Renato muito obrigado pela atenção em primeiro lugar.

    Há a possibilidade de add um form e executa-lo no servico??

    segunda-feira, 23 de fevereiro de 2015 13:05
  • Luiz,

    Eu nunca fiz isto.

    Quando implementei serviços desta maneira, sempre a execução do mesmo era a partir de uma aplicação sem interface gráfica.

    O máximo que acontecia era em alguma aplicação relacionada eu disponibilizar uma interface para monitoramento do serviço. Neste último caso, eu procurava manter um log completo e atualizado, a fim de conseguir observar com precisão o que já havia ocorrido e mesmo o status atual do serviço.

    Espero ter ajudado.

    Abs

    • Sugerido como Resposta RZVieira segunda-feira, 23 de fevereiro de 2015 17:03
    • Não Sugerido como Resposta Luiz Lopes Ziul quarta-feira, 11 de maio de 2016 13:05
    segunda-feira, 23 de fevereiro de 2015 13:15
  • Complementando, na discussão abaixo há boas explicações sobre o motivo desta limitação:

    http://stackoverflow.com/questions/5211258/how-to-show-a-form-in-windows-service

    Inclusive o pessoal sugere o mesmo tipo de solução que comentei na segunda mensagem.

    segunda-feira, 23 de fevereiro de 2015 13:17
  • Usa windows forms para fazer isso, eu criei um projeto um tempo atras para envio de email marketing, criei um agendamento com uma classe direto no windows especificando data,hora etc e coloquei para executar a cada 5 minutos, se preferir pode utilizar Thread asincronas também.
    segunda-feira, 23 de fevereiro de 2015 13:29
  • Caso tenha conseguido a solução finalize sua Thread marcando a resposta

    GTSA vantagem de ser inteligente é que podemos fingir que somos imbecis enquanto ao contrario é completamente impossivel

    domingo, 28 de junho de 2015 14:27
  • não sei se já conseguiu realizar, mas fiz algo parecido usando a seguinte abordagem:

    crio o serviço e deixo escutando em alguma porta...

    crio um app para o cliente (que pode estar na mesma maquina do serviço, por exemplo) e mando iniciar durante o logon...

    após o logon o app fica na systray...

    quando o serviço manda o sinal o app abre a janela que aparece para interação do usuário...

    desta forma apenas um serviço funciona para todos os usuários que logarem na maquina..

    espero ter ajudado

    quinta-feira, 14 de abril de 2016 12:21