Fórum Substituir um EXE que esta em execução #337150
02/02/2007
0
Bom dia!!!
Alguem sabe como faz para trocar um Arquivo.EXE que esteja rodando por outro do mesmo nome?
Estou baixando um arquivo da internet que é o mesmo arquivo em execução .. entao preciso trocar pela versao mais nova.
Alguem ja fez isso?
Mmoreira
Curtir tópico
+ 0Posts
02/02/2007
Macario
Eu em breve estarei desenvolvendo algo para esta necessidade.
Penso que o metodo usado é, ter uma outra aplicação responsavel pela tarefa de atualização(como a dos anti-virus).
Assim esta aplicação (Atualizador) fecharia o exe necessario e logo apos o inicia novamente.
ps.: isso é apenas uma ideia, que nao faço ideia de como fazer, ainda!
[]´s
Gostei + 0
02/02/2007
Mmoreira
Boa tarde!
Na verdade isso que voce quer fazer eu ja fiz e funciona exatamente como voce disse. Um sistema responsavel por chegar uma nova versao do sistema no FTP .. se tem ele baixa excluindo a versao mais antiga e depois disso ele se encarrega de abrir o sistema que ele acabou de atualizar.
Até aqui tenho tudo sobre controle.
O que eu preciso tambem é atualizar o meu atualizador e vou explicar porque. Imagine que eu tenha o sistema acima funcionando blzinha só que por algum motivo eu precisei alterar alguma coisa no sistema que faz as atualizações .. exemplo: mudança do endereço de FTP, mudança da senha, mudança dos diretorios, etc ...
Por isso gostaria de pode sobrescrever um arquivo em execução.
Pode ser tambem que eu esteja complicando o que nao é para complicar, o que vc acha?
Gostei + 0
02/02/2007
Macario
Os parametros de acesso e conexão você deixa fixo?
Use dinamico,claro se as mudanças forem apenas essas.
Uma ideia seria o Nome do exe incluir sua versão. assim acredito que seria facil a manipulação.
O antigo atualiza o novo e o novo ´mata´ o antigo.
[]´s
Gostei + 0
02/02/2007
Mmoreira
No caso as configurações como senha, logon e endereço do ftp eu deixo dinamico mesmo em um arquivo ini e criptografado.
A lógica seria esta mesmo o novo matar o antigo e assumir seu lugar, o que eu na verdade nao gostaria de ter é 2 arquivos no processo todo. Gostaria de ter apenas um que faria tudo na sequencia:
ETAPA 1 - Conectar no FTP e ver se tem uma versao mais nova dele mesmo. Caso tenha pular para a etapa numero 2 caso nao tenha pular para a etapa 3.
ETAPA 2 - Baixar a versao mais nova do sistema de Update e logo depois de baixar ... quando o arquivo for totalmente baixado fazer a troca do velho pelo novo que acabou de ser baixado.
ETAPA 3 - Conectar novamente no servidor FTP para baixar as atualizações do sistema que esta funcionando no cliente.
ETAPA 4 - O sistema de Update deve ser finalizado mas antes abrir o sistema que ele acabou de atualizar.
A idéia é esta por isso gostaria de saber como sobrescrever um arquivo em execução. Caso isso nao seja possivel vou ter que bolar outra maneira.
Gostei + 0
02/02/2007
Macario
Então colega, ja li em alguns post´s que isso não é possivel.
Acho que para aumentar sua produtividade, melhor você projetar uma solução alternativa, a que citei nao é a mais elegante, mas acho que ´quebra-galho´.
[]´s
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)