Alcune spiegazioni: per un progetto su cui sto lavorando Devo scrivere un programma in esecuzione in background, rileva le modifiche a file e carica i file modificati su un servizio Web per renderli disponibili agli altri. Abbastanza semplice sincronizzazione se non fosse per il caso in cui un utente modifica un grosso file e decide di spegnere il suo computer subito dopo la modifica.C# - Come rilevare un arresto/disconnessione di Windows e annullare quell'azione (dopo aver chiesto all'utente)
Posso annullare il caricamento e attendere il riavvio successivo per eseguire il caricamento, ma posso immaginare l'utente che scarica il file dal web su un altro computer la mattina successiva e non capisco perché i suoi cambiamenti dalla scorsa notte non sono ci sono.
Quindi la mia idea era di rilevare quando gli utenti si disconnettevano o riavviano Windows, e se sono nel mezzo di un caricamento, solo chiedendo all'utente "Stiamo ancora sincronizzando il file Foo.txt
che hai appena cambiato. sicuro di voler riavviare? Le modifiche non saranno disponibili per gli altri fino al riavvio del computer! ". Se gli utenti dicono no, avrei bisogno di annullare il riavvio/la disconnessione
È possibile?
OK questo è quello che pensavo ... Allora lascerò andare questo comportamento. Un'altra idea che ho è mostrare il progresso del caricamento in una finestra semitrasparente in ogni momento. Gli utenti vengono quindi messi a conoscenza del lavoro che sta avvenendo dietro la scena e probabilmente non verranno arrestati in quel caso. –
@Sebastien a dire il vero, vorrei dare un servizio come suggerito da Hans. Rendi il caricamento robusto in modo tale che possa essere ripreso e avvolgere tutto in un servizio in modo che l'utente non debba riavviarlo tutto manualmente. –
Questo è più o meno il comportamento che avrei adottato quando ho detto "lascerò andare questo comportamento". Stavo solo pensando di aggiungere un progresso di caricamento discreto solo per far sapere all'utente. Certo, potrebbe non essere necessario se sono forniti curriculum. Immagino di essere solo un po 'nervoso per l'idea di un utente che va a casa con il suo notebook e file non sottoposti a backup nel sistema ... –