Darkzad, Posso dar outra sugestão? Cara, criei um método de atualização que ficou infalível aqui. Olha só: Criei uma tabela no banco chamada ATUALIZACOES conforme abaixo:
CREATE TABLE ATUALIZACOES ( ID INTEGER NOT NULL, NOME VARCHAR(30), VERSAO INTEGER, ARQUIVO BLOB SUB_TYPE 0 SEGMENT SIZE 80 NOT NULL ); E os registros na base ficam assim: FROTA.EXE | 6.150 | ???? OPERACAO.EXE | 6.149 | ???? COBRANCA.EXE | 6.127 | ???? Quando o sistema abre ele faz uma select no banco usando o nome do módulo (Operacao.exe, Frota.exe, Cobranca.exe). Nada como um ExtractFileName não resolva. Feito isso verifico se a versão do sistema, prevista em uma variável global, é inferior ou superior a que está no banco. Se for inferior, faço um "download" do arquivo atualizado puxando diretamente do banco de dados. Use: QueryCAMPO_ARQUIVO.SaveToFile(ExtractFilePath(Application.ExeName)); Se o módulo (na variável global) for superior, então faço o upload para o banco usando: QueryCAMPO_ARQUIVO.LoadFromFile(ExtractFilePath(Application.ExeName)); Desta forma, basta instalar o executável novo em uma estação e nesta mesma estação abrir ao menos uma vez o executável para que ele sozinho faça a atualização do banco. As demais máquinas serão automaticamente atualizadas assim que reabrirem o sistema. Na ClubeDelphi 84 saiu um artigo sobre isso, foi de lá que peguei a idéia. Porém a idéia do autor foi fazer um programinha a parte para atualizar o banco. No meu caso já enfiei isso direto no executável de produção. Ah e tem mais: todos os meus clientes usam uma dll. Cada cliente tem a sua. Esse esquema tb previ a atualização automática das dlls. Xuxu beleza Adriano Santos ------------------------------------------------------------- Editor Técnico Revista ClubeDelphi www.delphitodelphi.blogspot.com www.devmedia.com.br www.devmedia.com.br/clubedelphi/pagina.asp Darkzad respondeu: > > Bom dia a Todos > > Pessoal, estou desenvolvendo um sistema na empresa e sempre ocorre > atualizações a fazer e sempre tenho que pedir os usuários para sair do > sistema. > > Gostaria de fazer algo no sistema que enviasse uma mensagem pedindo ao > usuário que saia do sistema para atualização. > > Teria algo possível de resolver isso? > > Desde já agradeço > > Darkzad > > [As partes desta mensagem que não continham texto foram removidas] > > > ------------------------------------------------------------------------ > > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.5.516 / Virus Database: 269.17.13/1213 - Release Date: 07/01/2008 > 09:14 >