Re: [delphi-br] Ajuda...Atualização de Software

2010-02-12 Por tôpico Walter Chagas (Bol)
Éh, a questão do IP fixo, é que aqui a coisa toda acontece dentro da rede 
interna. Pra Internet realmente o processo será outor.

[]s
 
 
Walter Alves Chagas Junior
Belo Horizonte - MG - Brazil
wchag...@bol.com.br
http://delphitocorporerm.blogspot.com/
http://twitter.com/wchagas
MSN: whitesock...@hotmail.com
SKYPE: WalterChagasJr


  - Original Message - 
  From: Dirlei Dionísio 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Thursday, February 11, 2010 7:56 PM
  Subject: Re: [delphi-br] Ajuda...Atualização de Software



  Obrigado pelo retorno Walter, mais comentários abaixo.

  Em 10 de fevereiro de 2010 15:36, Walter Chagas (Bol)

  
  
Como vocês lidam com o caso de a instalação estar mais de uma versão
defasada? Exemplo: o cliente está na versão 1.0 e não fez a atualização
para 1.1. Quando ele resolve atualizar, a versão mais recente já é 1.2.
   
   
  
   O nosso caso roda dentro da rede interna. Sempre que o programa é
   atualizado, somos obrigados a entrar no banco de dados do servidor e trocar
   a versão. Tem uma tabela específica pra isto. A tabela fica no banco de
   dados que seu sistema irá interagir. Quando o caboclo lá executa o sistema,
   a primeira coisa que ele faz é ir na tabela e confrontar sua versão com a
   versão que tá lá. Caso haja divergencia, ele avisa pro usuario atualizar.
   Senão, continua executando o programa. Na telemont, temos 4 servidores cada
   um com um banco diferente dada a quantidade de sistemas que rodam na
   operacional. Todos estes bancos tem a tabela de controle de versões dos
   sistemas que irão interagir com estes referidos bancos. Eu acredito que suas
   atualizações são cumulativas, portanto não seria problema se o cliente está
   na 1.0 e seu projeto já no 1.5. Pelo menos aqui na Telemont a coisa é assim.
   As atualizações são cumulativas
  

  Então as atualizações de banco de dados são feitas manualmente, certo? No
  meu caso, as atualizações do banco de dados também são automáticas.

  
  
Não entendi, por que IP fixo?
   
  
   Se voce trocar o IP do servidor, aonde estão as atualizações, toda hora,
   como é que se programa de update irá achar o servidor para pegar o arquivo e
   instalá-lo no cliente?
  
  
  
  Via DNS.

  
  

  [As partes desta mensagem que não continham texto foram removidas]



  

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Ajuda...Atualização de Software

2010-02-11 Por tôpico Dirlei Dionísio
Obrigado pelo retorno Walter, mais comentários abaixo.

Em 10 de fevereiro de 2010 15:36, Walter Chagas (Bol)



  Como vocês lidam com o caso de a instalação estar mais de uma versão
  defasada? Exemplo: o cliente está na versão 1.0 e não fez a atualização
  para 1.1. Quando ele resolve atualizar, a versão mais recente já é 1.2.
 
 

 O nosso caso roda dentro da rede interna. Sempre que o programa é
 atualizado, somos obrigados a entrar no banco de dados do servidor e trocar
 a versão. Tem uma tabela específica pra isto. A tabela fica no banco de
 dados que seu sistema irá interagir. Quando o caboclo lá executa o sistema,
 a primeira coisa que ele faz é ir na tabela e confrontar sua versão com a
 versão que tá lá. Caso haja divergencia, ele avisa pro usuario atualizar.
 Senão, continua executando o programa. Na telemont, temos 4 servidores cada
 um com um banco diferente dada a quantidade de sistemas que rodam na
 operacional. Todos estes bancos tem a tabela de controle de versões dos
 sistemas que irão interagir com estes referidos bancos. Eu acredito que suas
 atualizações são cumulativas, portanto não seria problema se o cliente está
 na 1.0 e seu projeto já no 1.5. Pelo menos aqui na Telemont a coisa é assim.
 As atualizações são cumulativas


Então as atualizações de banco de dados são feitas manualmente, certo? No
meu caso, as atualizações do banco de dados também são automáticas.




  Não entendi, por que IP fixo?
 

 Se voce trocar o IP do servidor, aonde estão as atualizações, toda hora,
 como é que se programa de update irá achar o servidor para pegar o arquivo e
 instalá-lo no cliente?



Via DNS.






[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Ajuda...Atualização de Software

2010-02-10 Por tôpico Walter Chagas (Bol)
Aqui na telemont temos um sistema de atualização automatica também. Porém com 
algumas diferenças:

1) Feito em VB

2) Ele nao guarda o update no banco e sim numa pasta em um servidor de arquivos.

3) Guardamos no banco o número da ultima versão que deve estar rodando nas 
estações.

4) Ao ser executado na estação, o sistema consulta o banco se a versão dele é a 
mesma que está na tabela. Caso contrario, ele chama um programinha de 
atualização automática para baixar o update do servidor. Quando ele chama este 
aplicativo, ele já se auto finaliza. Este programinha baixa o update e já o 
executa automaticamente.

Pela WEB é possível que isto funcione também porém, o servidor aonde as 
atualizações vão ficar, deverá ter IP fixo..


[]s
 
 
Walter Alves Chagas Junior
Belo Horizonte - MG - Brazil
wchag...@bol.com.br
http://delphitocorporerm.blogspot.com/
http://twitter.com/wchagas
MSN: whitesock...@hotmail.com
SKYPE: WalterChagasJr


  - Original Message - 
  From: Dirlei 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Tuesday, February 09, 2010 8:25 AM
  Subject: Re: [delphi-br] Ajuda...Atualização de Software



  Vou explicar como funciona o sistema de atualização automática que 
  projetei e desenvolvi aqui onde trabalho. Não pretendo que criar um 
  manual de como fazer, mas creio que dê pra explicar resumidamente como 
  funciona e inspirar aqueles que pretendem fazer algo parecido.

  Há uma base MySQL na internet com os Updates de cada produto (nossos 
  softwares). Cada Update, atualiza um conjunto de versões. Exemplo: o 
  update ProgramaX 1.5 atualiza as versões do Programa X 1.3 e 1.4.

  Os updates são setups gerados com o NSIS (poderia ser outro gerador de 
  instalações, mas escolhemos esse). Cada setupt de update leva apenas as 
  atualizações necessárias, não a instalação inteira. Isso pode incluir o 
  EXE do programa, DLL's, arquivos de relatório etc. 

  Um detalhe importante é a atualização do banco de dados. Aqui 
  trabalhamos com databases versionados. Ex: a primeira versão liberada 
  tem o database 1.0. À cada alteração no database, incrementamos a versão 
  (1.1, 1.2 ou 2.0 se a alteração for expressiva).

  Aqui criamos uma linguagem para contemplar os scripts de atualização e 
  os upgrades de versão (XML + SQL + criptografia). Chamamos essa 
  linguagem de DBML (Databse Maintenance Language). Um arquivo DBML contêm 
  o script para realizar cada salto de versão. Ex: da versão 1.0 para 
  1.1 foi criado um índice; da versão 1.1 para 1.2 foi criada uma nova 
  tabela e assim por diante.

  O setup de atualização carrega consigo um arquivo DBML (sempre que tiver 
  acontecido uma alteração de database) com os saltos de versão (de 
  database) contemplados pela atualização. Ex: se a atualização faz update 
  da versão (de database) 1.0 e 1.1, o DBML conterá apenas esses saltos 
  de versão.

  Agora a parte da atualização automática:

  Foi criado um serviço PHP que consulta a base MySql (citada no início) e 
  informa se há atualização disponível para uma determinada versão.

  Nossos sistemas carregam consigo um componente que chamei de 
  SelfUpdate (Atualização de si mesmo). Esse componente, 1 vez por dia, 
  dispara o serviço PHP que diz se há atualização para a versão do produto 
  em execução. Se houver atualização, o PHP devolve a URL para download e 
  o componente faz download do setup de atualização. Isso acontece numa 
  outra thread, então o sistema continua podendo ser operado. No fim do 
  download, o usuário é avisado que na próxima execução, o programa será 
  atualizado. Na próxima execução, se não houver nenhum outro usuário 
  utilizando o programa, é executado o setup de atualização, que atualiza 
  os arquivos do programa e o banco de dados, se necessário.

  É assim que fazemos. Funciona há alguns anos com cerca de 2 mil usuários.

  Qualquer dúvida, postem aqui que posso tentar ajudar na medida do possível.

  Um abraço,
  Dirlei.

  snakesjb escreveu:
   
  
   Tenho um sistema feito em Delphi 2007 e banco de dados firebird...Como 
   o sistema ja fooi instalado em alguns clientes e o mesmo ainda está em 
   fase de testes, MAS EM USO, quase toda semana tenho que atualizar o 
   executável...alguem tem alguma idéia??? Tava pensando em colocar o 
   sistema em um ftp e criar um sistema para download apresentando os 
   arquivos para download...Alguem tem algum exemplo para me ajudar???
  


  

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Ajuda...Atualização de Software

2010-02-10 Por tôpico Walter Chagas (Bol)
 Como vocês lidam com o caso de a instalação estar mais de uma versão 
 defasada? Exemplo: o cliente está na versão 1.0 e não fez a atualização 
 para 1.1. Quando ele resolve atualizar, a versão mais recente já é 1.2.



O nosso caso roda dentro da rede interna. Sempre que o programa é atualizado, 
somos obrigados a entrar no banco de dados do servidor e trocar a versão. Tem 
uma tabela específica pra isto. A tabela fica no banco de dados que seu sistema 
irá interagir. Quando o caboclo lá executa o sistema, a primeira coisa que ele 
faz é ir na tabela e confrontar sua versão com a versão que tá lá. Caso haja 
divergencia, ele avisa pro usuario atualizar. Senão, continua executando o 
programa. Na telemont, temos 4 servidores cada um com um banco diferente dada a 
quantidade de sistemas que rodam na operacional. Todos estes bancos tem a 
tabela de controle de versões dos sistemas que irão interagir com estes 
referidos bancos. Eu acredito que suas atualizações são cumulativas, portanto 
não seria problema se o cliente está na 1.0 e seu projeto já no 1.5. Pelo menos 
aqui na Telemont a coisa é assim. As atualizações são cumulativas


 Não entendi, por que IP fixo?


Se voce trocar o IP do servidor, aonde estão as atualizações, toda hora, como é 
que se programa de update irá achar o servidor para pegar o arquivo e 
instalá-lo no cliente?



[]s
 
 
Walter Alves Chagas Junior
Belo Horizonte - MG - Brazil
wchag...@bol.com.br
http://delphitocorporerm.blogspot.com/
http://twitter.com/wchagas
MSN: whitesock...@hotmail.com
SKYPE: WalterChagasJr


  - Original Message - 
  From: Dirlei 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Wednesday, February 10, 2010 8:32 AM
  Subject: Re: [delphi-br] Ajuda...Atualização de Software



  É interessante saber como funcionam outras soluções Walter! Fiz alguns 
  comentários/perguntas abaixo.

  Walter Chagas (Bol) escreveu:
   
  
   Aqui na telemont temos um sistema de atualização automatica também. 
   Porém com algumas diferenças:
  
   1) Feito em VB
  
   2) Ele nao guarda o update no banco e sim numa pasta em um servidor de 
   arquivos.
  
  O meu também não. No banco fica apenas a URL para o setup de 
  atualização (compactado com LZMA para burlar proxies que bloqueiam 
  download de EXE)

   3) Guardamos no banco o número da ultima versão que deve estar rodando 
   nas estações
  
  
   4) Ao ser executado na estação, o sistema consulta o banco se a versão 
   dele é a mesma que está na tabela. Caso contrario, ele chama um 
   programinha de atualização automática para baixar o update do 
   servidor. Quando ele chama este aplicativo, ele já se auto finaliza. 
   Este programinha baixa o update e já o executa automaticamente.
  
  Como vocês lidam com o caso de a instalação estar mais de uma versão 
  defasada? Exemplo: o cliente está na versão 1.0 e não fez a atualização 
  para 1.1. Quando ele resolve atualizar, a versão mais recente já é 1.2.
  
  
   Pela WEB é possível que isto funcione também porém, o servidor aonde 
   as atualizações vão ficar, deverá ter IP fixo..
  
  Não entendi, por que IP fixo?
  
  
   []s
  
  
   Walter Alves Chagas Junior
   Belo Horizonte - MG - Brazil
   mailto:wchagasj%40bol.com.br
  



  

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Ajuda...Atualização de Software

2010-02-09 Por tôpico Samuel M. Basso
Eu uso ftp para baixar o executavel do sistema e para o banco eu utilizo
arquivo texto mesmo com os scripts e executo na base de cada um que baixar
os novos arquivos.

2010/2/8 Domingos domingosp...@gmail.com

 Estou com a mesma dúvida, para o executável eu uso FTP, mas e para o banco?

 Você usa o Database Comparer do IBExpert?

 Em 8 de fevereiro de 2010 16:13, snakesjb robsontazina...@hotmail.com
 escreveu:

 
 
  Tenho um sistema feito em Delphi 2007 e banco de dados firebird...Como o
  sistema ja fooi instalado em alguns clientes e o mesmo ainda está em fase
 de
  testes, MAS EM USO, quase toda semana tenho que atualizar o
  executável...alguem tem alguma idéia??? Tava pensando em colocar o
 sistema
  em um ftp e criar um sistema para download apresentando os arquivos para
  download...Alguem tem algum exemplo para me ajudar???
 
 
 



 --
 
 Domingos José Martins de Souza


 [As partes desta mensagem que não continham texto foram removidas]



 

 --
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 






-- 
Atenciosamente,

Samuel M. Basso
Cel: (54) 8135-3723
Skype: samuelbasso
E-mail/MSN: samuelba...@gmail.com
Web site: www.samuelbasso.com


[As partes desta mensagem que não continham texto foram removidas]



[delphi-br] Ajuda...Atualização de Software

2010-02-08 Por tôpico snakesjb
Tenho um sistema feito em Delphi 2007 e banco de dados firebird...Como o 
sistema ja fooi instalado em alguns clientes e o mesmo ainda está em fase de 
testes, MAS EM USO, quase toda semana tenho que atualizar o executável...alguem 
tem alguma idéia??? Tava pensando em colocar o sistema em um ftp e criar um 
sistema para download apresentando os arquivos para download...Alguem tem algum 
exemplo para me ajudar???



Re: [delphi-br] Ajuda...Atualização de Software

2010-02-08 Por tôpico Samuel M. Basso
Eu fiz um executavel a parte que quando executado ele verifica no site onde
hospedo as atualizacoes se existe atualizacao mais recente e
consequentemente ele baixa a atualização. Junto com a atualizacao eu tenho
os scripts que ele executa para atualizar a base de dados, porem tenho um
problema que ainda nao resolvi no scripts, quando tento criar foreign key
nunca da certo, sempre da erro que tal campo esta em uso e nao consegue
prosseguir, mesmo ninguem executando o sistema ele da esse erro so consigo
executar reininciando o serviço do firebird que ate entao nao tive ideias.
mas é assim que faço atualizacoes.

2010/2/8 snakesjb robsontazina...@hotmail.com



 Tenho um sistema feito em Delphi 2007 e banco de dados firebird...Como o
 sistema ja fooi instalado em alguns clientes e o mesmo ainda está em fase de
 testes, MAS EM USO, quase toda semana tenho que atualizar o
 executável...alguem tem alguma idéia??? Tava pensando em colocar o sistema
 em um ftp e criar um sistema para download apresentando os arquivos para
 download...Alguem tem algum exemplo para me ajudar???

  




-- 
Atenciosamente,

Samuel M. Basso
Cel: (54) 8135-3723
Skype: samuelbasso
E-mail/MSN: samuelba...@gmail.com
Web site: www.samuelbasso.com


[As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Ajuda...Atualização de Software

2010-02-08 Por tôpico Domingos
Estou com a mesma dúvida, para o executável eu uso FTP, mas e para o banco?

Você usa o Database Comparer do IBExpert?

Em 8 de fevereiro de 2010 16:13, snakesjb robsontazina...@hotmail.comescreveu:



 Tenho um sistema feito em Delphi 2007 e banco de dados firebird...Como o
 sistema ja fooi instalado em alguns clientes e o mesmo ainda está em fase de
 testes, MAS EM USO, quase toda semana tenho que atualizar o
 executável...alguem tem alguma idéia??? Tava pensando em colocar o sistema
 em um ftp e criar um sistema para download apresentando os arquivos para
 download...Alguem tem algum exemplo para me ajudar???

  




-- 

Domingos José Martins de Souza


[As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Ajuda...Atualização de Software

2010-02-08 Por tôpico Domingos
Samuel, boa noite

   Cara gostei muito da sua idéia, poderia explicar melhor?
   O usuário executa esse sistema para ver se existe atualização?
Esse seu executável acessa um serviço de FTP pra baixar o arquivo? Como você
faz atualização do executável? Ou ele baixa outro arquivo? e a parte de
atualização do banco de dados, você faz como o database comparer?

Obrigado,
[]'s

Em 8 de fevereiro de 2010 23:00, Samuel M. Basso
samuelba...@yahoo.com.brescreveu:

 Eu fiz um executavel a parte que quando executado ele verifica no site onde
 hospedo as atualizacoes se existe atualizacao mais recente e
 consequentemente ele baixa a atualização. Junto com a atualizacao eu tenho
 os scripts que ele executa para atualizar a base de dados, porem tenho um
 problema que ainda nao resolvi no scripts, quando tento criar foreign key
 nunca da certo, sempre da erro que tal campo esta em uso e nao consegue
 prosseguir, mesmo ninguem executando o sistema ele da esse erro so consigo
 executar reininciando o serviço do firebird que ate entao nao tive ideias.
 mas é assim que faço atualizacoes.

 2010/2/8 snakesjb robsontazina...@hotmail.com

 
 
  Tenho um sistema feito em Delphi 2007 e banco de dados firebird...Como o
  sistema ja fooi instalado em alguns clientes e o mesmo ainda está em fase
 de
  testes, MAS EM USO, quase toda semana tenho que atualizar o
  executável...alguem tem alguma idéia??? Tava pensando em colocar o
 sistema
  em um ftp e criar um sistema para download apresentando os arquivos para
  download...Alguem tem algum exemplo para me ajudar???
 
 
 



 --
 Atenciosamente,

 Samuel M. Basso
 Cel: (54) 8135-3723
 Skype: samuelbasso
 E-mail/MSN: samuelba...@gmail.com
 Web site: www.samuelbasso.com


 [As partes desta mensagem que não continham texto foram removidas]



 

 --
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 






-- 

Domingos José Martins de Souza


[As partes desta mensagem que não continham texto foram removidas]