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
>   

Responder a