View Full Version : Chiedere conferma di chiusura di windows 7
Salve,
c'è un modo per "intercettare" la chiusura di Seven (che avviane da "start->arresta il sistema") e visualizzare un messaggio di conferma? E che poi in caso l'utente risponda negativamente annulli la richiesta di shutdown?
grazie
Bè se sei abbastanza veloce potresti fare
Esegui-->shutdown /a
in questo modo annulli la chiusura di windows
x_Master_x
08-06-2012, 12:30
In realtà una funzionalità del genere non c`é più dai tempi di Xp ( Spegni computer - Arresta il sistema ) ma modificando le policy c`é una schermata di avviso allo shutdown utilizzata dai server, meglio che niente. Ti scrivo la procedura appena sono su 7.
x_Master_x
08-06-2012, 13:42
Start - scrivi gpedit.msc
Vai alla voce:
Configurazione computer - Modelli amministrativi - Sistema - Visualizza individuazione evento di arresto
Clicca due volte sulla voce e quindi su "Attiva", per confermare su OK
Quando cliccherai su "Arresta il sistema" apparirà:
http://i.imgur.com/aVG8Y.jpg
Per spegnere il PC dovrai scrivere un commento qualsiasi e poi su OK o premi INVIO
Per annullare clicchi su Annulla o ESC
dimentichi che gpedit non c'è nella home e va scaricato ^^
mentre il comando shutdown accetta di tutto e di più anche nella home, ad esempio, shutdown /i ....
Chessmate
08-06-2012, 15:00
Per evitare la chiusura accidentale del sistema, io ho personalizzato il menu Start e come azione del pulsante di alimentazione ho messo "Sospendi". Ora per arrestare il sistema, cliccando su Start trovo la voce "Arresta" nel menu che compare cliccando sulla freccina vicino al pulsante.
x_Master_x
08-06-2012, 15:21
dimentichi che gpedit non c'è nella home e va scaricato ^^
mentre il comando shutdown accetta di tutto e di più anche nella home, ad esempio, shutdown /i ....
Lo sai che ho una soluzione per tutto :O :asd:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Reliability]
"ShutdownReasonOn"=dword:00000001
"ShutdownReasonUI"=dword:00000001
Se c'è una cosa che non posso/voglio testare è i sistemi come Windows 7 Home, hanno limitazioni inutili ( e speriamo che con Windows 8 non sia così, almeno dal punto di vista delle policy )
Grazie a tutti delle soluzioni quando ho un po' di tempo li testerò. Conoscevo il comando "shutdown -a" per bloccare la richiesta di shutdown ma a me serve tipo un messaggio che ricordi all'utente di fare qualcosa prima di spegnere.
La situazione è questa:
- l'utente clicca su "arresta il sistema"
- io devo "intercettare" questa richiesta e ricordare tramite un messaggio (o uno script) di fare un backup
- se l'utente è d'accordo, blocca l'operazione di arresto e quindi fa il backup, altrimenti continua con l'arresto del sistema.
Qualche idea geniale per fare ciò?
Grazie
x_Master_x
11-06-2012, 12:16
Sempre i gpedit c'é la sezione dedicata agli script in avvio e in arresto di sistema:
http://technet.microsoft.com/it-it/library/cc783802(v=ws.10).aspx
In questo caso devi programmare uno script, spero che tu conosca almeno un linguaggio...
la visualizzazione della finestra di chiusura tramite modifica del registro come suggerito potrebbe essere una soluzione, visto che tra l'altro non ho gpedit.msc. C'è un modo semplice di visualizzare anche un messaggio assieme alla finestra (non mi pare che il campo "messaggio" della finestra stessa lo permetta)?
Grazie
x_Master_x
13-06-2012, 07:46
Senza gpedit ed in manera semplice? No, serve gpedit e creare uno script apposito con relativa GUI per visualizzare una finestra con una scelta:
Si --> backup
No --> Spegni
Se non conosci nessun linguaggio di programmazione accontatati del risultato :D
Allora ho scritto uno script del genere:
Set oShell = WScript.CreateObject ("WScript.shell")
oShell.run "shutdown -a"
risposta = MsgBox ("Eseguire la sincronizzazione?",1)
If risposta = 1 Then
oShell.run """C:\Program Files\FreeFileSync\FreeFileSync.exe""",1,true
oShell.run "shutdown -s"
WScript.Quit
Else
oShell.run "shutdown -s"
Set oShell = Nothing
End If
Però non mi prende il comando shutdown (in pratica mi apre un finestra cmd che ripete in loop il comando "shutdown -i" e non succede nulla).
Su Xp invece funziona.
Qualche idea?
Grazie
x_Master_x
13-06-2012, 11:36
Non uso VB da molto tempo. Prova un bat con uno schema del genere:
@ECHO OFF
shutdown -a
IF "%1"=="S" GOTO Si
IF "%1"=="N" GOTO No
ECHO Si o No? Premi S o N seguito dal tasto INVIO . . .
ECHO @%0 S > backup.exe
ECHO @%0 N > shutdown -s
GOTO End
:Si
ECHO Hai risposto sì
shutdown -s
GOTO End
:No
ECHO Hai risposto No
:End
Grazie mille per l'aiuto.
Ho risolto il problema dello script (bastava specificare il percorso del comando shutdown), funziona se faccio doppio clic ma se lo imposto come script di arresto non parte, cioé nn blocca l'arresto con "shutdown -a" come pensavo io. Inoltre windows non si chude correttamente xk resta con la schermata di arresto all'infinito, ma questo è un altro problema x ora non mi interessa! :)
Perché non esege lo script PRIMA dello spegnimento? C'è un modo alternativo per "bloccare" l'arresto quindi? Oppure è possibile (tramite una chiave di registro magari) specificare il tempo di attesa del normale shutdown (così magari da 0 metto qualche secondo in modo da dare il tempo allo script di eseguire "shutdown -a", ma queste sono solo supposizioni mie...)
x_Master_x
23-06-2012, 14:55
Perchè non fai un script che faccia tutto e lo metti sul desktop? Non c'è nessuna differenza dal cliccare sull logo di windows - spegni computer oppure cliccare 2 volte su un'icona del desktop che si chiama "spegni computer"
Così puoi mettere tutto le funzionalità che vuoi, i secondi allo spegnimento etc. perchè non esiste nessuna modifica al registro che fà quello che chiedi
Si alla fine penso che farò così, ci avevo già pensato.
Il tutto però dipende da chi mi ha commissionato il lavoro, che fa parte di quella categoria di persone un po' "anziane" che sanno fare quelle 2-3 cose al pc, ti chiedono una cosa quasi impossibile ma allo stesso tempo non devi toccargli le proprie sicurezze già acquisite!
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.