ATUALIZANDO UM SISTEMA, MSGBOX ???

EMINGHINI 03/10/2006 15:17:34
#175314
Pessoal,

Boa Tarde, preciso de uma dica, já pensei em algumas saidas mas nada realmente util ....

Possuo um sistema em VB6/SQL2000 instalado num servidor W2K3, e com 80 usuários acessando o sistema simultaneamente através de atalhos no desktop de suas máquinas, porem, diariamente necessito atualizar o sistema, ou seja, re-compilar o arquivo SISTEMA.EXE e para isso tenho feito uma gambiarra de remover e repor o compartilhamento de rede, para que eu consiga substituir o arquivo SISTEMA.EXE caso contrario é exibido uma mensagem de arquivo em uso.

O que pensei e o que preciso:

Talvez que surja na tela do usuário um msgbox e/ou um form saltetante com bolinhas vermelhas e amarelas ....

Talvez um shutdown forçado na aplicação ....

Porem preciso que o usuário saiba que a aplicação vai fechar, pra que ele não venha a ligar para encher o saco falando que o sistema caiu ...

Alguem ja passou por isso e tem uma solução ?!

Abraços ...

EMinghini
USUARIO.EXCLUIDOS 03/10/2006 15:27:31
#175323
Tu pode criar uma rotina de atualização automática, onde o proprio EXE se atualiza e reestarta.

Att

Charles
USUARIO.EXCLUIDOS 03/10/2006 15:30:52
#175326
Eminguini,

Já é um tanto estranho ter uma aplicação que deve ser compilada diariamente, mas necessidade é necessidade! Eu criaria uma mensagem usando o NET SEND dizendo a todos que o sistema sairá por 2 minutos e outra mensagem para quando o sistema voltar. Mesmo os usuários que não estiverem presentes na estação saberão que o sistema atualizou. O problema é que teria que habilitar o serviço de Messenger em Administrative Tools -> Services em cada estação. Mas isso é só uma vez... acredito que é melhor que atender os chatos que telefonam...

[]'s André Milaré
USUARIO.EXCLUIDOS 03/10/2006 15:31:48
#175327
Carinha, é por isso que gosto de deixar apenas o BD no servidor e os executáveis em cada máquina, mais vai lá... O que acho que pode fazer, é usar o WinSock, enviar dados à  todos e dpois enviar a msg para cada usuário...Procure no site por CHAT e WINSOCK...Ou ainda, se quiser algo mais fácil, colocar um timer no form principal que leia um arquivo que está junto com o EXE, daí neste arquivo vc grava a informação se é ou não pra fechar, tipo, se for pra fechar vc vai no arquivo (pelo bloco de notas mesmo) e digita SHUTDOWN, daí no timer (chamarei o arquivo de Comando.dat:

Private Sub Timer1_Timer()
Dim f As Integer
f = FreeFile
Open App.path & "\Comando.dat" For Input As #f
If UCase(Input(LOF(f), f)) Like "*SHUTDOWN*" Then
'Mostre aqui um form avisando que irá fechar...
'Ou uma msgbox dando um tempo:
MsgBox "O sistema está em atualização e será fechado em 1 minuto", vbInformation
'Daí vc põe um Timer2 com intervalo = 60000, e em seu conteúdo algo pra fechar o sistema
Timer2.Enabled = True
End If
Close #f
End Sub


No Timer2
Private Sub Timer2_Timer()
Dim f As Form
'Fecha todos forms...
For Each f In Forms
Unload f
Next f
End Sub


é isso, qualquer dúvida poste...flw
EMINGHINI 03/10/2006 16:10:55
#175352
Ok pessoal, não fugiu muito do que estava pensando ...

1. Atualização do sistema ... isso fica uma pouco dificil, pois é turno 24 horas, sempre alguem esta usando.

2. Net send, é proibido aqui na empresa, o serviço é até desativado ...

3. Matioli, pensei tb no winsock .... só uma duvida ... eu preciso ter uma aplicação rodando direto no server né ? o do txt vou fazer o teste ....


abraços a todos ...
USUARIO.EXCLUIDOS 03/10/2006 17:10:49
#175371
Citação:

3. Matioli, pensei tb no winsock .... só uma duvida ... eu preciso ter uma aplicação rodando direto no server né ? o do txt vou fazer o teste ....



Cara, nunca usei Winsock efetivamente, só pra testes à  toa, mas sim, vai precisar de um servidorzinho, e seu proprio programa seria os clientes...flw
USUARIO.EXCLUIDOS 03/10/2006 17:42:47
#175385
Citação:

1. Atualização do sistema ... isso fica uma pouco dificil, pois é turno 24 horas, sempre alguem esta usando.



O computador nunca é desligado? Pois senão, poderia colocar a atualização no login script.
USUARIO.EXCLUIDOS 03/10/2006 17:46:25
#175387
Vc pode fazer o seu aplicativo emitir mensagens.
Assim, vc colocaria uma contagem regressiva para o sistema fechar.
Tópico encerrado , respostas não são mais permitidas