Service Application
Olá pessoal!
Criar um serviço (Service Application) para rodar em sistemas baseados na plataforma WINNT (WinNT, Win2003, WinXP). Desenvolvi em uma máquina usando o WinXP. O serviço acessa uma base de dados em DB2. Na minha máquina funciona corretamente, tudo certo. Em outra máquina rodando Win 2003 sem delphi instalado, ele não consegue logar no banco de jeito nenhum. Não é problema de configuração do caminho do banco, usuario, senha, etc.
Alguém já passou por um problema deste tipo e sabe me informar o que devo fazer?
Criar um serviço (Service Application) para rodar em sistemas baseados na plataforma WINNT (WinNT, Win2003, WinXP). Desenvolvi em uma máquina usando o WinXP. O serviço acessa uma base de dados em DB2. Na minha máquina funciona corretamente, tudo certo. Em outra máquina rodando Win 2003 sem delphi instalado, ele não consegue logar no banco de jeito nenhum. Não é problema de configuração do caminho do banco, usuario, senha, etc.
Alguém já passou por um problema deste tipo e sabe me informar o que devo fazer?
Noeli
Curtidas 0
Respostas
Massuda
24/07/2006
Algumas coisas que você pode dar uma olhada..
(1) Você instalou tudo que precisa para seu programa acessar o BD? Estou falando de BDE, driver dbExpress, etc.
(2) Pode ser que você não tenha instalado o cliente do BD. Usando algum outro programa, você consegue acessar o BD a partir dessa máquina?
(3) O usuário default de um serviço chama-se SYSTEM e esse usuário não tem permissão para acessar a rede. Crie um usuário na máquina com as permissões adequadas e configure seu serviço para rodar usando esse usuário (isso tudo se faz no Painel de Controle do Windows).
(1) Você instalou tudo que precisa para seu programa acessar o BD? Estou falando de BDE, driver dbExpress, etc.
(2) Pode ser que você não tenha instalado o cliente do BD. Usando algum outro programa, você consegue acessar o BD a partir dessa máquina?
(3) O usuário default de um serviço chama-se SYSTEM e esse usuário não tem permissão para acessar a rede. Crie um usuário na máquina com as permissões adequadas e configure seu serviço para rodar usando esse usuário (isso tudo se faz no Painel de Controle do Windows).
GOSTEI 0
Noeli
24/07/2006
Massuda, obrigada pelas dicas mas não eh isso!
Eu consigo acessar o banco dessa máquina com outra aplicação.
Nesse meu serviço, uso sqlconnection. Posso usar em serviço?
Eu consigo acessar o banco dessa máquina com outra aplicação.
Nesse meu serviço, uso sqlconnection. Posso usar em serviço?
GOSTEI 0
Massuda
24/07/2006
Com relação ao sqlconnection, não entendo muito de BD, mas a princípio deveria funcionar sem problema.
Com relação ao item (3) do meu post anterior, o usuário que me referi não é o usuário do BD, mas sim o usuário (conta) do Windows. Se o serviço estiver rodando como sendo o usuário SYSTEM ou LOCALSERVICE (veja isso no Gerenciador de Tarefas), seu serviço não tem permissão de acessar a rede local e/ou usar TCP/IP.
Com relação ao item (3) do meu post anterior, o usuário que me referi não é o usuário do BD, mas sim o usuário (conta) do Windows. Se o serviço estiver rodando como sendo o usuário SYSTEM ou LOCALSERVICE (veja isso no Gerenciador de Tarefas), seu serviço não tem permissão de acessar a rede local e/ou usar TCP/IP.
GOSTEI 0
Noeli
24/07/2006
Desculpe Massuda por não ter sido clara e obrigada pela sua atenção.
Eu entendi o q vc quis dizer e já verifiquei, o usuário está ok.
Me referi ao sqlconnection porque quando abro a conexão:
sqlconnection.Open;
é que acontece o seguinte erro:
´The description for Event ID (0) in Source (Agenda) cannot be found.
The local computer may not have the necessary registry information
or message DLL files to display messages from a remote computer. You
may be able to use the /AUXSOURCE = flag to retrieve this description;
see Help and Support for details. The following information is part of
the event: Service failed on start: Unable to Load db2cli.dll.´
Acho q é algum detalhe que não estou me ligando. Esta dll já está em todos os lugares possíveis de ser encontrada.
Eu entendi o q vc quis dizer e já verifiquei, o usuário está ok.
Me referi ao sqlconnection porque quando abro a conexão:
sqlconnection.Open;
é que acontece o seguinte erro:
´The description for Event ID (0) in Source (Agenda) cannot be found.
The local computer may not have the necessary registry information
or message DLL files to display messages from a remote computer. You
may be able to use the /AUXSOURCE = flag to retrieve this description;
see Help and Support for details. The following information is part of
the event: Service failed on start: Unable to Load db2cli.dll.´
Acho q é algum detalhe que não estou me ligando. Esta dll já está em todos os lugares possíveis de ser encontrada.
GOSTEI 0