Programa não roda - DBExpress
Olá,
Boa noite a todos!
Desenvolvi uma aplicação com DbExpress + MySQL 5.0 no CodeGear 2009.
Instalei o Exe, as dll (libmySQL.dll; libmySQLd50.dll; libmySQLd51.dll, dbxmys.dll; Borland.Data.DBXMySQLDriver.Dll) no system32 do maquina, mas o programa simplesmente nãoo roda.
O banco consegue conectar blz, pq consigo com o front-end.
Se alguem puder ajudar, agradeço.
Att
Dalton
Boa noite a todos!
Desenvolvi uma aplicação com DbExpress + MySQL 5.0 no CodeGear 2009.
Instalei o Exe, as dll (libmySQL.dll; libmySQLd50.dll; libmySQLd51.dll, dbxmys.dll; Borland.Data.DBXMySQLDriver.Dll) no system32 do maquina, mas o programa simplesmente nãoo roda.
O banco consegue conectar blz, pq consigo com o front-end.
Se alguem puder ajudar, agradeço.
Att
Dalton
Dbergkamps10
Curtidas 0
Respostas
Steve_narancic
14/10/2009
Não faltou a midas.dll?
GOSTEI 0
Dbergkamps10
14/10/2009
Coloquei a midas.dll mas nao funfou.
alguem tem alguma ideia?
alguem tem alguma ideia?
GOSTEI 0
Alex Maia
14/10/2009
Qual mensagem de erro aparece?
GOSTEI 0
Dbergkamps10
14/10/2009
aí esta o problema alex, não aparece nada.
O problema ta na hora de criar o DataModule.
Att
Dalton
O problema ta na hora de criar o DataModule.
Att
Dalton
GOSTEI 0
Steve_narancic
14/10/2009
ja tive problemas em que a aplicação não encontrava a midas.dll, abre o cmd e roda esse comando [b:e4ff065c4d] regsvr32 midas.dll[/b:e4ff065c4d]
GOSTEI 0
Alex Maia
14/10/2009
Também acredito que seja no momento da criação do datamodule. Por isso, faça o seguinte: antes de compilar certifique-se que o SqlConnection esteja com a propriedade ´Connected = False´ e faça com que o SqlConnection busque os parâmetros de conexão de um arquivo de configuração no momento da criação do datamodule.
Qualquer coisa envie um e-mail para mim.
Flw.
Qualquer coisa envie um e-mail para mim.
Flw.
GOSTEI 0
Dbergkamps10
14/10/2009
Ola alex,
coloquei assim no OnCreate do Dm:
Mas continua sem rodar.
me ajuda.....
Att
Dalton
coloquei assim no OnCreate do Dm:
SQLConnection1.Connected:=false; SQLConnection1.LoadParamsFromIniFile(ExtractFilePath(Application.ExeName) + ´config.ini´); SQLConnection1.Connected:=true;
Mas continua sem rodar.
me ajuda.....
Att
Dalton
GOSTEI 0
Alex Maia
14/10/2009
Deixe a propriedade Connected:=false ainda em tempo de projeto.
GOSTEI 0
Alex Maia
14/10/2009
Deixe a propriedade Connected:=false ainda em tempo de projeto.
GOSTEI 0
Dbergkamps10
14/10/2009
olá,
ja fiz tudo.....mas o problema continua e eh no data module.
vejam o codigo:
so aparece ate o Gerenciador de Tarefas.
se alguem puder ajudar, agradeço.
att
dalton
ja fiz tudo.....mas o problema continua e eh no data module.
vejam o codigo:
Application.Initialize; ShowMessage(´Inicializou´); Application.MainFormOnTaskbar := True; ShowMessage(´Gerenciador de Tarefas Ok´); Application.CreateForm(TDataModule1, DataModule1); ShowMessage(´Criou o DataModule´); Application.CreateForm(TFMPrincipal, FMPrincipal); ShowMessage(´Criou o FmPrincipal´); Application.Run; end.
so aparece ate o Gerenciador de Tarefas.
se alguem puder ajudar, agradeço.
att
dalton
GOSTEI 0
Afarias
14/10/2009
o Windows é 64bits?
algum código no OnCreate do DataModule em questão?
algum DataSet com Active=True ou a conexão está ativa em DesignTime? (no DataModule)
T+
algum código no OnCreate do DataModule em questão?
algum DataSet com Active=True ou a conexão está ativa em DesignTime? (no DataModule)
T+
GOSTEI 0
Dbergkamps10
14/10/2009
Olá,
afarias, no oncreate do datamodule tá assim:
obrigado pela atenção.
att
dalton
afarias, no oncreate do datamodule tá assim:
procedure TDataModule1.DataModuleCreate(Sender: TObject);
var
i: integer;
begin
SQLConnection1.Connected:=false;
SQLConnection1.LoadParamsFromIniFile(ExtractFilePath(Application.ExeName) + ´config.ini´);
SQLConnection1.Connected:=true;
if SQLConnection1.Connected=true then
begin
{ for i := 0 to ComponentCount -1 do
if Components[i] is (TClientDataSet) then
begin
TClientDataSet(Components[i]).Close;
TClientDataSet(Components[i]).Open;
end;}
for i := 0 to ComponentCount -1 do
if Components[i] is (TSQLTable) then
begin
TSQLTable(Components[i]).Close;
TSQLTable(Components[i]).Open;
end;
for i := 0 to ComponentCount -1 do
if Components[i] is (TSimpleDataSet) then
begin
TSimpleDataSet(Components[i]).Close;
TSimpleDataSet(Components[i]).Open;
end;
end
else
begin
Application.MessageBox(´Não foi possível realizar a conexão!´,´Atenção´, MB_OK + MB_ICONERROR);
Application.Terminate;
end;
end;obrigado pela atenção.
att
dalton
GOSTEI 0
Afarias
14/10/2009
1) O Windows é 64bits ??
2) Faça um ´log´ do passo a passo do OnCreate como vc fez anteriormente para descobrir onde o programa está ´travando´
3) Vc deve SEMPRE se certificar que *todos* os DataSets (principalmente ClientDataSets) estão com ACTIVE=FALSE (em tempo de projeto) antes de compilar
4) A princípio, não é boa prática abrir todos os DataSets ao criar o DM como vc está fazendo
T+
2) Faça um ´log´ do passo a passo do OnCreate como vc fez anteriormente para descobrir onde o programa está ´travando´
3) Vc deve SEMPRE se certificar que *todos* os DataSets (principalmente ClientDataSets) estão com ACTIVE=FALSE (em tempo de projeto) antes de compilar
4) A princípio, não é boa prática abrir todos os DataSets ao criar o DM como vc está fazendo
T+
GOSTEI 0