Stop e avvio applicazione client

Pubblicità

Daviduzzo

Utente Attivo
Messaggi
76
Reazioni
0
Punteggio
28
Ciao a tutti,
ho un'applicazione client che lavora su un database di rete su un server, quest'applicazione è attiva 24H su 24, solo che il server si riavvia in automatico ogni domenica alle 14.15 con questo script:
shutdown /r /f /t 60
poi il lunedì alle 5.00 fa ripartire i servizi con questo
net strt ntfrs
net start netlogon
net start MSSQL$SQLSERVERVIEW
net start SQLAgent$SQLSERVERVIEW
net start "FSC ServerView Services"

Sul client invece ho impostato questo script per la chiusura e il riavvio dell'applicazione, ma puntualmente il lunedì dopo il riavvio l'applicazione non risponde:
taskkill /f /IM <nome appli> (questo parte sabato alle 18)
poi richiama l'applicazione alle 5.30 di ogni lunedì.

un'altro problema è che mi trovo aperta la finestra di Dos ogni volta, come si fa a chiudere?
 
Il problema di quel comando è che molte volte non è in grado di forzare la chiusura perchè agisce sull'applicazione e non sul processo; quando esegui questa operazione manualmente solitamente explorer ti rimanda ad un popup di conferma chiusura, impensabile da automatizzare. Per rispondere velocemente alla domanda relativa alla chiusura, beh, basta usare il comando exit. Riguardo alla chiusura del processo, potrebbe darsi che l'unità di rete o la connessione all'applicativo, si perda durante il riavvio su server. La prima operazione che ti consiglio è quella di chudere l'applicazione sul client e disconnettere l'unità di rete, successivamente la potrai riaprire solo dopo aver fatto ripartire l'applicativo su server.
Se il problema della chiusura rimane, ti consiglio di utilizzare il porting per Windows del comando "kill" usato su Linux, agendo sul PID del processo per la chiusura, si complica un pochino lo script, ma la chiusura è istantanea e certa.
 
Innanzitutto verifica la chiusura dell'applicazione sul client con taskkill quando tutto è in fuzione. Se si chiude, devi disconnettere l'unità di rete (ammesso che tu l'abbia configurata per l'accesso da parte dell'applicativo).
Successivamente fai ripartire i servizi su server e poi nell'ordine esegui la rimappatura dell'unità e l'avvio dell'applicazione client.
Se tutto funziona ti rimane solo la schedulazione delle operazioni su client come preferisci.
Es.:
taskkill /f /IM <nome appli>
net use x: /delete
---
(a servizi attivi su server)
net use x: \\10.0.0.1\cartellaapp
x:\nomeapp.exe
 
Grazie. In ogni caso l'applicazione si chiude correttamente con taskkill.Ma riesci a darmi anche il comando per chiudere il processo in modo sicuro? grazie ancora
 
Non capisco se il problema sul client ce l'hai dopo il riavvio dei servizi su server. In che modo poi ripristini la funzionalità, con un riavvio del client?

Secondo me va in blocco il client per via di quel riavvio dei servizi, gli stessi ripartono correttamente poi su server?
 
Pubblicità
Pubblicità
Indietro
Top