Fórum Executar um comando antes de compilar... #392778
20/12/2010
0
Primeiramente vou apresentar meu ambiente de desenvolvimento: Delphi 7, Banco de dados Postgres e componente de acesso Zeus.
Tenho uma rotina que faz o seguinte, no evento oncreate do meu DataModule eu pego algumas configuração de um arquivo texto como: HOST, PORT, USER, DATABASE... no qual o sistema irá se conectar...
até ai tranquilo...
o problema é que quando vou gerar o executavel por exemplo estou conectado na base de testes. exe:
HOST: 10.1.1.1
DATABESE: TESTE
USER: USUARIO
PORT: 1234
a questão é, se eu esquecer de DESCONECTAR do banco antes de compilar, quando o meu cliente for executar o programa antes mesmo de passar pelo evento do oncreate que é onde estar meu ZCONECTION (componente que faz o acesso ao banco) e tambem onde passo os parametros para a conexão, ele recebe uma mensagem de erro informando que não foi possivel conectar na base TESTE... que é onde eu estava conectado no ato da compilação...
Teria alguma forma de colocar uma rotina para desconectar da base que estou antes de gerar o meu executavel?
Km Sistemas
Curtir tópico
+ 0Posts
20/12/2010
Elton Rosa
Assim desconectaria do banco de dados..
Mas posta aí sua rotina que você mencionou..
Gostei + 0
20/12/2010
Km Sistemas
Assim desconectaria do banco de dados..
Mas posta aí sua rotina que você mencionou..
Então, eu ja tenho la no oncreate do meu programa isso:
ZConnection1.Conected := False;
a questão é que antes de passar nesta linha ja da o erro...
como foi compilado como conectado quando cria o dm ja vem conectado... ai da o erro
Gostei + 0
20/12/2010
Paulo Andrade
Assim desconectaria do banco de dados..
Mas posta aí sua rotina que você mencionou..
Então, eu ja tenho la no oncreate do meu programa isso:
ZConnection1.Conected := False;
a questão é que antes de passar nesta linha ja da o erro...
como foi compilado como conectado quando cria o dm ja vem conectado... ai da o erro
Gostei + 0
20/12/2010
Km Sistemas
O meu problema esta sendo que antes de passar no evento oncreate do meu DM ja da o erro...
ou seja, qualquer coisa que eu coloque no OnCreate vai da o mesmo erro..
Em todos os casos ta aqui o código que tenho no OnCreate do DM
ZDBConecta.Disconnect; ZDBConecta.HostName := ParamStr(3); ZDBConecta.Port := StrToInt(ParamStr(4)); ZDBConecta.User := ParamStr(5); ZDBConecta.Database := ParamStr(6); ZDBConecta.Connect;
Gostei + 0
20/12/2010
Leonardo Xavier
EX.:
. . Aplication.Initialize; . . . . Application.Run; . . .
Gostei + 0
20/12/2010
Km Sistemas
EX.:
. . Aplication.Initialize; . . . . Application.Run; . . .
Esta aqui:
Application.Initialize; Application.Title := 'Menu Geral'; Application.CreateForm(TDM_Con, DM_Con); Application.CreateForm(TForm_Menu, Form_Menu); Application.Run;
Gostei + 0
20/12/2010
Leonardo Xavier
Application.Initialize; Application.Title := 'Menu Geral'; Application.CreateForm(TDM_Con, DM_Con); DM.ZConnection1.Conected := False; Application.CreateForm(TForm_Menu, Form_Menu); Application.Run;
Gostei + 0
20/12/2010
Km Sistemas
Application.Initialize; Application.Title := 'Menu Geral'; Application.CreateForm(TDM_Con, DM_Con); DM.ZConnection1.Conected := False; Application.CreateForm(TForm_Menu, Form_Menu); Application.Run;
fiz assim:
Application.Initialize; Application.Title := 'Menu Geral'; Application.CreateForm(TDM_Con, DM_Con); DM_Con.ZDBConecta.Connected := False; Application.CreateForm(TForm_Menu, Form_Menu); Application.Run;
mais não adiantou...
continua dando o erro de host não encontrado...
Gostei + 0
20/12/2010
Leonardo Xavier
Application.Initialize; Application.Title := 'Menu Geral'; Application.CreateForm(TDM_Con, DM_Con); DM_Con.ZDBConecta.Disconnect;
DM_Con.ZConnection1.Conected := False; Application.CreateForm(TForm_Menu, Form_Menu); Application.Run;
Gostei + 0
20/12/2010
Km Sistemas
Application.Initialize; Application.Title := 'Menu Geral'; Application.CreateForm(TDM_Con, DM_Con); DM_Con.ZDBConecta.Disconnect;
DM_Con.ZConnection1.Conected := False; Application.CreateForm(TForm_Menu, Form_Menu); Application.Run;
Fiz assim:
Application.Initialize; Application.Title := 'Menu Geral'; Application.CreateForm(TDM_Con, DM_Con); DM_Con.ZDBConecta.Disconnect; Application.CreateForm(TForm_Menu, Form_Menu); Application.Run;
mais ainda naum deu certo...
Gostei + 0
20/12/2010
Km Sistemas
Gostei + 0
22/12/2010
Km Sistemas
Gostei + 0
27/12/2010
Km Sistemas
Será que elas podem resolver esse meu problema?
Gostei + 0
27/12/2010
Km Sistemas
Obrigado a todos...
Fiz o seguinte, editei a classe ZConnection do Zeus para que naum venha conectado....
até...
Gostei + 0
30/12/2010
Km Sistemas
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)