Boa tarde pessoal,

Tenho um software na versão Serviço e Aplicativo, sendo que as
funções de acesso a banco eu uso a mesma classe para os dois. O
método de conexão usado sempre foi o BDE, contudo não funciona
para as versão do Sistema operacional de 64 bits.

Criei uma opção de configuração para usar BDE ou ADO.

Quando estou rodando como Aplicativo funciona tudo certo, porém
quando rodo como Serviço não funciona, o método de conexão
que estou usando é o seguinte:

XPassword := 'Password=' + SENHA;

XPersistSecurityInfo := 'Persist Security Info=True';

XUserID := 'User ID=' + USER;

XDataSource := 'Data Source=' + NomeDoServidor;

ADOConexao := TADOConnection.Create(Nil);

ADOConexao.LoginPrompt := False;

ADOConexao.KeepConnection := True;

ADOConexao.ConnectionTimeout := 30;

ADOConexao.CommandTimeout := 30;

ADOConexao.ConnectionString
:=Provider+';'+XPassword+';'+XPersistSecurityInfo+';'+XUserID+';'+XIniti\
alCatalog+';'+XDataSource;

Nos eventos do Windows o erro é o seguinte: "Não é
possível localizar a descrição da Identificação de Evento 0 na
origem "CollectorServer". O componente que gera esse evento não
está instalado no computador local ou a instalação está
danificada. Você pode instalar ou reparar o componente no computador
local.

Se o evento foi originado em outro computador, as informações de
exibição tiveram que ser salvas com o evento.

As seguintes informações foram incluídas com o evento:

Erro ao executar serviço C3Server. Mensagem original: CoInitialize
não foi chamado"

Se alguém tiver alguma pista fico agradecido.

Wandarlei Michelon

Analista/programador Delphi





[As partes desta mensagem que não continham texto foram removidas]

Responder a