DISTRIBUIÇÃO DE APLICAÇÃO DELPHI CLIENTE(REDE), COM ZEOS Y MYSQL.
27/10/2016
0
Uso DELPHI BERLIM 10.1, conexão ao MYSQL através do ZEOS por arquivo ".ini". Criei dois arquivos ".ini" um para cada tipo de tecnologia de acesso a dados, a saber: FIREDAC e ZEOS, se um falhar, ele tenta o outro, mas mesmo assim não abre a aplicação no executável Cliente, simplesmente não responde a nada. A aplicação roda normalmente em minha máquina de desenvolvimento, mas no meu notebook de testes não roda. Já fiz todas as configurações no servidor e no cliente do Mysql. Mas creio que meu problema está no meu executável, parece que falta algum arquivo de compilação. HELP, PLEASE.
Wilton Santos
Posts
27/10/2016
Jones Granatyr
27/10/2016
Wilton Santos
Mas acho que meu problema pode estar na compilação do meu instalador. Compilei em win32 e estou instalando em um cliente win64. Ao tentar compilar meu projeto em meu DELPHI na plataforma windows64 me gera um erro com o FASTREPORT ([dcc64 Fatal Error] frxChart.pas(21): F2063 Could not compile used unit 'frxCollections.pas') e não consigo compilar de nenhum modo, já tentei bibliotecas(library), reinstalei o FastReport 5 e nada. O erro continua. Alguma ajuda?
27/10/2016
Wilton Santos
"It appears that Fast Reports cannot be installed into more than one IDE.", isto é, "Parece que o Fast Reports não pode ser instalado em mais de uma IDE" e eu tinha realmente duas IDE´s com o FASTREPORT rodando: DELPHI BERLIM 10.1 e DELPHI XE8. Desinstalei tudo e instalei somente no DELPHI BERLIM 10.1 e a coisa funcionou show de bola.
Agora estou tentando finalmente gerar o executável da minha aplicação para distribuir em REDE em plataforma WINDOWS64bits com MYSQL e ZEOS, tendo a possibilidade de funcionamento também com FIREDAC através dos arquivos ".ini". Se der tudo certo eu publico os caminhos, mas se der errado estarei aqui pedindo ajuda.
28/10/2016
Wilton Santos
31/10/2016
Wilton Santos
CONSEGUI RESOLVER, VAI O BIZU.... Uhulll....!!!
Vai ai a solução para os amigos que necessitam:
Bom, meu sistema já está rodando na rede com sucesso (DELPHI BERLIM, MYSQL, ZEOS e WIN64), acompanhe os passos:
1. Primeira coisa que eu fiz foi Recompilar e Reconstruir(Build) todo meu sistema para a plataforma Windows64 bits;
2. Configurei meu banco de Dados para receber o Usuario da rede, criando um novo usuario com host: 192.168.0.xxx(ip da maquina Client) no Mysql do servidor.
3. Criei um arquivo .ini para configurar externamente os dados de conexão, especialmente o LibraryLocation que o Zeos exige para direcionar a dll cliente/servidor (libmariadb.dll). OBS: tem que ser a lib para win64;
4. Copiei o arquivo libmariadb.dll da pasta do ZEOS mesmo (C:\\Program Files (x86)\\ZeosLib\\lib\\mysql\\mariadb_client-1.0.0-win64) para a maquina Client na pasta que se encontra o executavel;
5. Instalei o sistema na maquina Client;
6. Modifiquei os dados do arquivo ini na pasta do Executavel do Client como no modelo:
[Zconexao]
Hostname=192.168.0.102
user_name=UserClient (colocar o nome do usuario criado no MySql Servidor)
Password=12345
Port=3306
Database=caixaschema
Protocol=mysql-5
Charset=utf8
LibraryLocation=C:\\Users\\wilto\\Documents\\MeusPROJETOS\\SisGRACE\\libmariadb.dll
7. Verifiquei a conectividade da rede, referente as maquinas Client/Servidor;
8. Desliguei o Firewall do Servidor (se não desligar o firewall ou criar regra de exceção vai gerar o erro Mysql 10060);
9. Testei tudo e ... Show de bola.
É isso ai pessoal, se eu tiver esquecido algum detalhe é só perguntar que eu posto.
Abração e até mais.
CODIGO NO ONCREATE DO DATA MODULE PARA ARQUIVO INI:
if FileExists(GetCurrentDir+'\\configZcon.ini') then begin ini := TIniFile.Create(GetCurrentDir+'\\configZcon.ini'); try ZConexao.Connected := False; ZConexao.HostName := ini.ReadString('ZConexao', 'Hostname', ''); ZConexao.Port := ini.ReadInteger('ZConexao', 'Port', 0); ZConexao.Protocol := ini.ReadString('ZConexao', 'Protocol', ''); ZConexao.LibraryLocation := ini.ReadString('ZConexao', 'LibraryLocation', ''); ZConexao.User := ini.ReadString('ZConexao', 'User_name', ''); ZConexao.Password := ini.ReadString('ZConexao', 'Password', ''); ZConexao.Database := ini.ReadString('ZConexao', 'Database', ''); ZConexao.ClientCodepage := ini.ReadString('ZConexao', 'Charset', ''); ZConexao.Connected := True; ShowMessage('conexao ZEOS estabelecida'); except on E: exception do ShowMessage('No se pudo conectar a la Base de Datos por ZEOS, '+ #13+' posible razón: '+ e.message); end; ini.Free; end else ShowMessage('Ujj! Ningun archivo de conexion ZEOS existe... ');
Clique aqui para fazer login e interagir na Comunidade :)