none
Serviço do Windows que execute um aplicativo RRS feed

  • Pergunta

  •  

    Olá a todos, preciso de uma ajuda ...

     

    Possuo uma aplicação que ela deve funcionar como um serviço do windows (vb6) , daí tive a idéia de fazer um serviço do windows e chamar a aplicação através do comando shell( "path do meu arquivo executável" ) no onStart(). Consegui registrar o serviço, já vi que o mesmo está rodando na lista de serviços do windows, porém a aplicação não é executada,

    mesmo eu marcando nas propriedades do serviço itereja com a área de trabalho. E ai o que eu estou fazendo de errado? Alguém poderia me ajudar?

     

    Grata,

     

    Angela Peixoto

     

     

    quarta-feira, 2 de abril de 2008 20:05

Todas as Respostas

  •  

    Angela,

     

    Da uma lida nesse post http://forums.microsoft.com/MSDN-BR/ShowPost.aspx?PostID=2203005&SiteID=21. Acho que não tem como você interagir com a área de trabalho...

    Eu tentei fazer um serviço de sincronia quando inseria um pendrive na máquina. Também tive o mesmo problema que o seu e não consegui resolver.

     

    Valeu.

    sexta-feira, 11 de abril de 2008 20:18
  •  

    Oi Andre, eu já tinha visualizado este tótpico... consegui fazer a aplicaç~çao rodar como serviço, porém estou agora com outra dúvid a que é a seguinte: como a aplicação agora é um serviço do windows ele faz acesso ao registro do windows? A chave de conexão tá lá certinha e ele não lê...alguma idéia?

     

    vlw.

    quarta-feira, 16 de abril de 2008 12:33
  • Faz acesso ao registro sim,  inclusive eu fiz um projeto recentemente em que um Windows Service pegava um valor do registro do windows...

    E fiz um exemplo rápido para testar e funcionou...

     

    protected override void OnStart(string[] args)

    {

    StreamWriter w = new StreamWriter(new FileStream(@"C:\teste.txt", FileMode.CreateNew));

    w.WriteLine(Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Citrix\ICA Client").GetValue("MsiInstallDir").ToString());

    w.Close();

     

    Verifique com que conta o serviço está rodando (LocalSystem, NetworkService, User, etc.)... derrepente pode ser algum problema de permissão...

     

    Valeu!

    quarta-feira, 16 de abril de 2008 20:10
  •  

    Oi Andre, o meu problema eh que estou fazendo isso no vb6.. eu fiz o seguinte: eu tenho uma aplicação em vb6, criei no .net um Windows Service e no OnStart coloquei shell ("path do meu .exe em vb6"). No meu programa vb6 tenho uma função para conectar a base de dados que usa a função GetSetting que pega os valores da chaves do registro do windows onde contém o caminho da base de dados. Detalhe antes de colocar como serviço o GetSetting pegava o caminho certinho, so que agora ele pega 0 ou seja, null...

    Agora tem o seguinte eu realmente tinha pensando se o problema é porque o serviço está rodando no LocalSystem, e os valores das chaves estah em hkey_current_users/softwares/vb and vba... e o GetSetting não tá lendo essa arvore no registro. Estou certa ou errada? Vo^cê agora entendeu meu problema?

     

    Vlw.

    quarta-feira, 16 de abril de 2008 23:57