FOR?AR FINALIZA?ÃO DE .EXE
Bom dia Pessoal!
Possuo um sistema desenvolvido em Vb6 que fica em um servidor da rede.
Nele existe uma uma rotina que verifica no banco de dados a versão atual, e se a mesma não bater o .exe se auto finaliza.
Fui obrigado a montar esta rotina, pois como existe muitos usuários não consigo atualizar o sistema pois ao tentar substituir o arquivo o windows informa que o mesmo esta sendo utilizado.
Acontece que por algum motivo nem sempre o mesmo se auto finaliza quando a versao esta diferente.
Descobri que se existir um msgbox na tela do sistema o mesmo fica preso e não cai no evento do timer que faz esta vefificação.
Pergunta:
Existe algum timer que não fique preso devido a message box ou algo que não permita que seja acionado o evento timer?
Quando o usuário vai no servidor e executa o sistema, existe alguma maneira de retirar o [Ô]vinculo[Ô] com o arquivo que esta na rede e assim caso eu precise atualizar não seja emitido o aviso de arquivo em uso?
Abrigado!
Possuo um sistema desenvolvido em Vb6 que fica em um servidor da rede.
Nele existe uma uma rotina que verifica no banco de dados a versão atual, e se a mesma não bater o .exe se auto finaliza.
Fui obrigado a montar esta rotina, pois como existe muitos usuários não consigo atualizar o sistema pois ao tentar substituir o arquivo o windows informa que o mesmo esta sendo utilizado.
Acontece que por algum motivo nem sempre o mesmo se auto finaliza quando a versao esta diferente.
Descobri que se existir um msgbox na tela do sistema o mesmo fica preso e não cai no evento do timer que faz esta vefificação.
Pergunta:
Existe algum timer que não fique preso devido a message box ou algo que não permita que seja acionado o evento timer?
Quando o usuário vai no servidor e executa o sistema, existe alguma maneira de retirar o [Ô]vinculo[Ô] com o arquivo que esta na rede e assim caso eu precise atualizar não seja emitido o aviso de arquivo em uso?
Abrigado!
Aqui eu fiz da seguinte forma criei um atualizador a parte, quando o sistema esta em versao diferente fecho o executavel e abro o atualizador simples assim, ai nao da esse erro de arquivo sendo usado.
Kurtgu bom dia,
Poderia detalhar mais?
Nao entendi muito bem...
Poderia detalhar mais?
Nao entendi muito bem...
Citação::
Kurtgu bom dia,
Poderia detalhar mais?
Nao entendi muito bem...
Amigo Crie um EXE(Atualizador) a parte, que verifica a versão do EXE e compare com a informação do DB
esse Atualizador pode encerrar o EXE e atualizar o arquivo na pasta
assim fica mais Fácil.
No meu caso Uso assim
O Atalho na area de trabalho do Cliente, chama o Atualizador, que verifica se precisa atualizar, se precisar ele atualiza o EXE e depois abre o EXE
se não precisar atualizar ele só abre o EXE
Citação::
Kurtgu bom dia,
Poderia detalhar mais?
Nao entendi muito bem...
O atualizador é um .exe a parte do seu sistema que só e chamado quando a versao do sistema precisa ser atualizada...Ele faz todo o trabalho de atualizacao exclue o antigo .exe do seu sistema e coloca o novo no lugar.
Kurtgu, e como vc contra isso?. Como envia o exe para o cliente?. E como o exe do cliente checa se tem att ?
Antes fazia desta forma mais descobri sobre ClickOnce e estou usando somente ele..
KURTGU bom dia!
O problema é o [Ô]deletar[Ô].
Alguns usuários não fecham o sistema e eu nao consigo excluir...
O problema é o [Ô]deletar[Ô].
Alguns usuários não fecham o sistema e eu nao consigo excluir...
Talvez uma coisa que voce poderia fazer era nas estações clientes ter um vbs/bat que fizesse realmente a derrubada do teu aplicativo com um simples
Externamente ele pode ser chamado a qualquer momento, garantia de que derrubará pelo menos você vai ter, ai é uma questão de ver [Ô]quando[Ô] chamá-lo
taskkill -f -im [Ô]seuprograma.exe[Ô]
Externamente ele pode ser chamado a qualquer momento, garantia de que derrubará pelo menos você vai ter, ai é uma questão de ver [Ô]quando[Ô] chamá-lo
Opa webmater,
Gostei...
Vou ver se as maquinas aqui tem permissao de executar este comando.
Obrigado!
Gostei...
Vou ver se as maquinas aqui tem permissao de executar este comando.
Obrigado!
Tópico encerrado , respostas não são mais permitidas