|
Postada em 12/07/2006 00:37 hs
Maha, veja só nem sempre a simplicidade não é funcional, gostei da sua colocação, e com certeza vou usar, veja simples prático e funcional. É isto, amigo, as idéias unidas sempre trazem bons resultados. vlu//
|
|
|
|
|
Postada em 12/07/2006 11:47 hs
Olá Ghost, Sua idéia também é boa, mas eu tenho um sistema composto de 5 executáveis e uma infinidade de DLLs e OCX criadas por mim. Assim, eu pretendo usar um mesmo executável que servirá para fazer a atualização de quaisquer um dos cinco módulos. E em alguns casos, uma mesma máquina pode ter dois ou mais módulos instalados. Da forma como você falou, eu teria que criar vários "atualizadores" para cada programa, pois o usuário pode precisar fazer atualizações em mais de um módulo. Por isso eu pensei em um único programa disparado através de cada um dos módulos na sua inicialização. É claro que eu não vou simplesmente fechar o programa na cara do usuário e dispará-lo novamente, mas vou informar que foi feita uma atualização e o programa precisa ser reiniciado para que tenha efeito. Mas de qualquer forma, como eu ainda não coloquei a idéia em prática (tenho uma lista de modificações a fazer no sistema com mais prioridade que isso), eu vou considerar a sua idéia quando estiver fazendo testes. Valeu pela idéia... Maha, me ocorreu uma dúvida, se você coloca no BD uma flag True indicando que existe atualização, em que momento você libera esse flag para False, de forma que o programa não fique sempre se atualizando inutilmente, depois da atualização real? Entendeu? Eu entro no banco e veja que tem uma atualização. Fecho o programa, copio essa atualização por cima e disparo o programa novamente. Se eu remover esse flag nesse momento, corro o risco de uma outra estação ainda não ter se atualizado, e então fico com uma ou mais estações "atrasadas". Em que momento você libera o flag? um abraço a todos, Sandro.
|
|
|
Maha
|
SÃO PAULO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 12/07/2006 12:28 hs
Sandro na verdade eu dei apenas rum resumo mas é assim: Quando se abre o sistema e o flag está true abre uma janela dizendo ao cliente que tem uma atualização disponivel pedindo para o usuário clicar em ok e é ai que o sistema altera o FLAG para false, depois continua o resto do processo. Tem outra maneira de fazer, no BD coloca uma coluna "versao" indicando o número da versão em vez do flag o sistema ao iniciar verifica a sua versão e compara com o BD se for menor inicia o processo. Essa última é a que utilizo atualmente. Espero ter ajudado,
Saúde e Paz, o resto... trabalhando vem!!! "Se um dia a vida lhe der as costas, passe a mão na bunda dela!!!"
|
|
|
|
Postada em 12/07/2006 15:24 hs
Galera, Nao li todas as mensagens, mas vou deixar alguns comentarios: 1) Sobre o executavel no servidor.... nossa empresa ja trabalhou assim... Vou ser sincero, o q vc ganha na facilidade de atualizar, perde em resolver pipinos da rede... sempre tem um usuario pra apagar o compartilhamento, mudar a letra do mapeamento, abrir com permissoes exclusivas, coisas do tipo... alem do mais, vai acabar com a performace da rede... 2) Sobre atualizações: Eu tenho o programa que faz a atualização como vcs estavam dizendo ai... já faz alguns meses que esta funcionando, e muito bem... Eu uso uma pasta no servidor, onde guardo todas as versoes (todas, nao somente a atual)... em um XML tem informações sobre todas as versoes.... assim, qdo inicio o sistema, esse prog a parte le o XML e verifica se há atualizações para a versao atual. Se sim, atualiza automaticamente e reinicia o sistema. Se houver uma versao nova, ele informa ao usuario da versao nova, e pede pra o usuario abrir o sistema novamente (ele nao reinicia pq ele mesmo é substituido qdo muda a versao)... No caso de um projeto com varios executaveis e dll, seria possivel deixarmos no XML uma lista de dependencias de cada versao, assim o sistema poderia baixar de uma pasta de Resources no servidor apenas as que não tem, e registra-las automaticamente... Atualmente eu faço isso com patchs auto-executaveis (semelhantes a instaladores)... Agora, nossa empresa esta trabalhando em um sistema novo, de atualizações via WEB... estamos modelando o sistema ainda, mas devera funcionar semelhante ao ClickOnce do .Net... O usuario se loga no nosso site, clica no nome do sistema que ele usa, e pronto, o sistema baixa a atualização... A vantagem é não precisar mais ir até o cliente para atualizar... Assim o proprio cliente já baixa um pacote auto-executavel que vai copiar a versao para a pasta de Resources no servidor, e atualizar o XML de versoes...
Elieser Carlos Topassi Analista de Sistemas - Desenvolvedor VB/ASP/.Net
e-mail/msn: elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil _____________________________________________________
"O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)
|
|
|
|
Postada em 12/07/2006 20:12 hs
Olá Elieser, Gostei da idéia do XML como base para verificação de novas versões ou atualizações. Interessante também a idéia de atualizações via WEB, já havia pensado nisso, mas infelizmente, você deve saber, o nível geral de conhecimento dos usuários comuns está piorando a cada segundo. Eu trabalho fazendo atendimentos a clientes da empresa na rua, indo de cliente em cliente, e às vezes eu tenho que ensinar o usuário a configurar até o relógio do computador, porque nem isso eles sabem fazer. Muitos confundem disquete com CD! Parece incrível mas é verdade. As vezes eu chego em casa e conto para minha esposa, que também é analista de sistemas e acabamos sem saber se rimos ou choramos com essa situação. Agora imagine dizer a esse tipo de usuário que ele tem que entrar no site e dizer o programa que ele quer atualizar e baixar a atualização. Alguns deles vão perguntar: mas qual deles eu escolho?... Eu sei que nem todos os usuários são assim, eu mesmo tenho usuários que às vezes me surpreendem com a capacidade de assimilar o problema e buscar uma solução para ele, isso sem muito conhecimento de informática, apenas com bom senso e boa vontade, mas a grande maioria pelo menos é muito enrolada. Por isso eu desisti da idéia...na verdade eu pensei em outra coisa: o Sistema acessar automaticamente o site na WEB e se auto-atualizar. A idéia seria a mesma que eu coloquei em outra resposta desse tópico, porém ao invés de ir no servidor da empresa, ir no site WEB. O que você acha dessa idéia? um abraço, Sandro.
|
|
|
|