Fórum Conectar ao WebService de dentro da DLL #333025
11/11/2006
0
Salve pessoal,
Estou precisando desenvolver uma DLL que vai executar algumas rotinas no meu banco de dados ... mas eu nao preciso criar uma conexao com o banco de dados dentro da DLL uma vez que meu sistema esta em camadas usando SOAP ... ou seja eu ja tenho um WebService rodando que faz esta conexão com o BD.
Na minha aplicação que trabalha com este WebService eu tenho um componente: TSoapConnection que me permiete conectar os ClientDataSet´s aos seus respectivos DataSetProviders contidos na camada Servidora ...
O que eu precisava é ter um TSoapConnection dentro da minha DLL que me permitar conectnar no WebService.
Vou deixar aqui um pedaço da funcao que esta na dll que tenta acessar o DataMocule que eu criei na DLL:
Quando executo esta funcao da dll a primeira vez funciona .. mas na segunda a aplicação que chamou a DLL trava e é finalizada sem dar mensagem de erro alguma ...
Alguem sabe me dizer onde esta meu erro ??
Valew
Estou precisando desenvolver uma DLL que vai executar algumas rotinas no meu banco de dados ... mas eu nao preciso criar uma conexao com o banco de dados dentro da DLL uma vez que meu sistema esta em camadas usando SOAP ... ou seja eu ja tenho um WebService rodando que faz esta conexão com o BD.
Na minha aplicação que trabalha com este WebService eu tenho um componente: TSoapConnection que me permiete conectar os ClientDataSet´s aos seus respectivos DataSetProviders contidos na camada Servidora ...
O que eu precisava é ter um TSoapConnection dentro da minha DLL que me permitar conectnar no WebService.
Vou deixar aqui um pedaço da funcao que esta na dll que tenta acessar o DataMocule que eu criei na DLL:
function RetornaVendedor( IdVendedor : integer ) : string;
begin
dmModule := TdmModule.Create(nil);
try
dmModule.SoapConnection1.Open;
with dmModule.cdsVendedor do begin
Close;
Params[0].AsInteger := IdVendedor;
try
Open;
except
on e : Exception do GravaLogErro( ´Erro ao tentar localizar cadastro do vendedor. :´ + e.Message );
end;
if not IsEmpty then Result := FieldByName( ´Vendedor´ ).AsString else Result := ´´;
Close;
end;
dmModule.SoapConnection1.Close;
finally
FreeAndNil( dmModule );
end;
end;
Quando executo esta funcao da dll a primeira vez funciona .. mas na segunda a aplicação que chamou a DLL trava e é finalizada sem dar mensagem de erro alguma ...
Alguem sabe me dizer onde esta meu erro ??
Valew
Mmoreira
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)