Fórum Meu Sistema só funciona local na maquina que Desenvolvi #572842
17/12/2016
0
Criei um Servidor e a Parte cliente no Delphi Xe6 + DataSnap+ FireDAC porem o sistema pega o banco em um Servidor na Internet, mais a parte cliente só funciona se o servidor estiver junto na mesma maquina que crie o sistema, a parte Servidora Roda em outra maquina mais a parte cliente só roda na mesma maquina.
se eu coloco o servidor em outra maquina ele funciona mais a parte cliente da Erro de Socket se como o servidor não estivesse funcionado o que sera sera que alguém pode me dar uma luz
se eu coloco o servidor em outra maquina ele funciona mais a parte cliente da Erro de Socket se como o servidor não estivesse funcionado o que sera sera que alguém pode me dar uma luz
Aislan Sousa
Curtir tópico
+ 0
Responder
Post mais votado
17/12/2016
1. A parte servidora deverá está sempre ativa!
2. Qual procedimento está usando para realizar conexão no pc cliente?
2. Qual procedimento está usando para realizar conexão no pc cliente?
Raimundo Pereira
Responder
Gostei + 1
Mais Posts
17/12/2016
Nelinho
P2, o que deve ser considerado é a distribuição da aplicação na rede pelo servidor?
Responder
Gostei + 0
17/12/2016
Aislan Sousa
Bom Primeiro lugar Bom dia e obrigado por a atenção
é que eu inicie apenas uma teste ver se dava certo dai eu iria desenvolver um pequeno jogo para meu trabalho universitário, mais inicialmente eu tive uma surpresa que não é nada fácil mais vai meus procedimentos
no Meu banco foi criando em Farebird e tenho a penas uma tabela Cliente
no meu Servidor eu tenho 2 um Edit chamado de editPorta que ele vai receber a nova porta
e o outro e o EditCaminho ne é passado o caminho caso queira mudar para outro banco
onde os códigos são passado em SpeedBootons Chamado de SpeedAtivar e SpeedPara neles são esta o seguintes códigos:
procedure TF_Servidor.SpeedAtivar Click(Sender: TObject);
begin
SC.Transporte . Port := StrToInt(Edit_Porta.Text);
SC.Transporte . Start;
SC.DSServer1 . AutoStart := true;
SC.DSServer1 . Start;
end;
eu tenho outro SpeedBooton que ele é chamado de SpeedPara o codigo nele é o seguinte:
procedure TF_Servidor.SpeedPara Click(Sender: TObject);
begin
SC.Transporte . Stop;
SC.DSServer1 . AutoStart := False;
SC.DSServer1 . Stop;
end;
e na parte Cliente eu tenho o seguinte código em em um SpeedBooton
o Código é esse:
procedure TF_Cliente.SpeedButton1Click(Sender: TObject);
begin
DM.Conexao.Close;
DM.Conexao.Params.Clear;
DM.Conexao.Params.Add('Port=211');
DM.Conexao.Params.Add('HostName=localhost');
DM.Conexao.Params.Add('CommunicationProtocol=tcp/ip');
DM.Conexao.Params.Add('DatasnapContext=datasnap/');
DM.Conexao.Connected:= true;
DM.CDS_Cliente.Open;
end;
e também eu já copiei as Dlls Midas.dll, dbxfb.dll e a dll do Firebird para a pasta do executável do cliente e também eu já copiei para a pasta System32 as 3 dlls e também desabilitei o Firewal do dois pcs que eu estou testando e ainda mais abri a porta 3050 nos dois pcs e instalei o firebird mais ele persistem em não rodar e mais quando eu rodo eles o cliente e servidor na mesma maquina que eu estou desenvolvendo ele funciona mais se eu coloco o servidor em outra maquina ele e eu rodo o cliente maquina que eu estou desenvolvendo da erro de Socket e se eu coloco os dois em outra maquina o Servidor Roda mais o cliente da um Erro Extranho
Esse Erro: Remote error: [FireDAC][Stan][Def]-254. Definition [Conexao] is not found in[].
Tradução : Erro remoto: [FireDAC] [Stan] [Def] -254. Definição [Conexão] não é encontrada em [].
é que eu inicie apenas uma teste ver se dava certo dai eu iria desenvolver um pequeno jogo para meu trabalho universitário, mais inicialmente eu tive uma surpresa que não é nada fácil mais vai meus procedimentos
no Meu banco foi criando em Farebird e tenho a penas uma tabela Cliente
no meu Servidor eu tenho 2 um Edit chamado de editPorta que ele vai receber a nova porta
e o outro e o EditCaminho ne é passado o caminho caso queira mudar para outro banco
onde os códigos são passado em SpeedBootons Chamado de SpeedAtivar e SpeedPara neles são esta o seguintes códigos:
procedure TF_Servidor.SpeedAtivar Click(Sender: TObject);
begin
SC.Transporte . Port := StrToInt(Edit_Porta.Text);
SC.Transporte . Start;
SC.DSServer1 . AutoStart := true;
SC.DSServer1 . Start;
end;
eu tenho outro SpeedBooton que ele é chamado de SpeedPara o codigo nele é o seguinte:
procedure TF_Servidor.SpeedPara Click(Sender: TObject);
begin
SC.Transporte . Stop;
SC.DSServer1 . AutoStart := False;
SC.DSServer1 . Stop;
end;
e na parte Cliente eu tenho o seguinte código em em um SpeedBooton
o Código é esse:
procedure TF_Cliente.SpeedButton1Click(Sender: TObject);
begin
DM.Conexao.Close;
DM.Conexao.Params.Clear;
DM.Conexao.Params.Add('Port=211');
DM.Conexao.Params.Add('HostName=localhost');
DM.Conexao.Params.Add('CommunicationProtocol=tcp/ip');
DM.Conexao.Params.Add('DatasnapContext=datasnap/');
DM.Conexao.Connected:= true;
DM.CDS_Cliente.Open;
end;
e também eu já copiei as Dlls Midas.dll, dbxfb.dll e a dll do Firebird para a pasta do executável do cliente e também eu já copiei para a pasta System32 as 3 dlls e também desabilitei o Firewal do dois pcs que eu estou testando e ainda mais abri a porta 3050 nos dois pcs e instalei o firebird mais ele persistem em não rodar e mais quando eu rodo eles o cliente e servidor na mesma maquina que eu estou desenvolvendo ele funciona mais se eu coloco o servidor em outra maquina ele e eu rodo o cliente maquina que eu estou desenvolvendo da erro de Socket e se eu coloco os dois em outra maquina o Servidor Roda mais o cliente da um Erro Extranho
Esse Erro: Remote error: [FireDAC][Stan][Def]-254. Definition [Conexao] is not found in[].
Tradução : Erro remoto: [FireDAC] [Stan] [Def] -254. Definição [Conexão] não é encontrada em [].
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)