Página 1 de 1

Finalizar programa pela rede...

Enviado: 10 Abr 2011 10:37
por Samuk.exe
Bom Dia Amigos...
Estou fazendo um programa com atualização automatica.E esbarrei em um problema...
Para atualizar, preciso finalizar o exe para substituir pelo novo. Mais o Programa é executado via rede...Ou seja o Exe não está local.

Tem algum comando para finalizar o programa via rede?!?

Abraços...

Finalizar programa pela rede...

Enviado: 11 Abr 2011 10:33
por Pablo César
Eu não tenho conhecimento que exista algo assim via rede. Mas se for instalado um programa residente (como no tray) um programa que verifique a existência de um arquivo, por exemplo, poderia acionar um outro procedimento para "derrubar" a execução de determinado programa. No entanto, acho essa prática pouco segura e muito radical. Talvez dando uma mensagem para que o usuário feche ele mesmo, seria a forma mais segura, pois poderiam ficar dados sem atualizar ou até mesmo poderia causar corrupção de arquivos. Também acho que não compesaria manter um programa residente que verifique a todo instante (minuto a minuto ou tantos segundos a tantos segundos) o que pode vir a causar uma atividade desnecessária, pois essas atualizações provavelmente ocorrem em forma eventual e não frequente a todo instante.
Eu acostumo fazer essa verificação dentro do próprio programa, na saída de cada opção de menu, onde verifica a existência de determinado arquivo em determinada pasta e sugere ao usuário a saída imedita para manutenção. Pensei em colocar também uma mensagem instantânea via rede a todos, mas nem sempre pode ser utilizado o mesmo utilitário, pois numa rede podem haver diferente versões de Windows.

Bom espero ter contribuido para uma tomada de decisão sobre essa questão e esperando que talvez venham a contribuir com novas idéias.

Re: Finalizar programa pela rede...

Enviado: 11 Abr 2011 10:48
por alxsts
Olá!

Também acho perigoso derrubar usuários. Como foi dito, pode gerar problemas na sua base de dados, como corrupção de tabelas e arquivos de índice.

O ideal seria atualizar a versão quando todos os usuários estão fora do sistema. Uma opção seria renomear o executável (mesmo enquanto em uso) e copiar a nova versão. Assim, cada novo acesso ao sistema, acessaria a versão nova. Isso é possível a partir do Windows XP. Já no WIn9X não será possível renomear.

Finalizar programa pela rede...

Enviado: 11 Abr 2011 11:00
por Pablo César
Uma opção seria renomear o executável (mesmo enquanto em uso) e copiar a nova versão. Assim, cada novo acesso ao sistema, acessaria a versão nova. Isso é possível a partir do Windows XP. Já no WIn9X não será possível renomear.
Legal ! Não sabia disso ! Mas em Win98 ou inferior, tenho certeza que não dá pra fazer isso, já em XP ainda não fiz o teste. Obrigado Alexandre pela dica !

Re: Finalizar programa pela rede...

Enviado: 11 Abr 2011 14:01
por Samuk.exe
ok... Pensei Realmente nessa opção de renomear, mais em algumas atualizações criticas em que altero o layout da minha base de dados é perigoso...

Vou criar uma rotina mesmo pra conferir se está executando, se estiver, eu paro a atualização e envio menssagem para fechar o programa em todas as maquinas!
So dai concluo minha atualização.

Abraços e obrigado...