Come eseguire uno script in modalità sospensione, ibernazione, ripresa e arresto


18

Tengo molti dei miei documenti di classe ospitati su dropbox e il mio sito personale per l'archiviazione remota. Questo aiuta molto dal momento che passo da un iPad, un laptop e un desktop, quindi non ci sono preoccupazioni che i miei documenti non vengano toccati.

Il problema è che questa soluzione si basa sul fatto che mi ricordo di eseguire il programma di sincronizzazione (synctoy) per win7, quindi vorrei una soluzione per farlo automaticamente. Ho trovato un aiuto per gli script che dovrebbe funzionare all'avvio, ma come posso fare per eseguire lo script entrando in modalità sospensione e ibernazione, riprendendo da entrambi, nonché eseguendolo prima dell'arresto.


+1 Buona domanda. Sono consapevole che ci sono script specifici che puoi aggiungere in Ubuntu Linux per questo (anche se mi piacerebbe sapere in particolare quale me stesso). Ad ogni modo, ho avuto questo risultato anche usando Windows.
James T Snell,

Risposte:


11

Prova questo quando il computer ritorna dalla modalità Sospensione o Sospensione

Begin the Task: On an event
Setting Basic
Log:  System
Source: Power-Troubleshooter
Event ID: 1
The system has resumed from sleep.

Quando si mette il computer in modalità Sospensione o Sospensione

Begin the Task: On an event
Setting Basic
Log:  System
Source: Kernel-Power
Event ID: 42
The system is entering sleep.

Non funziona quando sono in letargo. Riesco a vedere l'evento che viene registrato nel Visualizzatore eventi, ma lo script che ho specificato in Utilità di pianificazione è in esecuzione solo dopo che il sistema è tornato da Hibernate. Secondo la cronologia dell'utilità di pianificazione, l'attività viene attivata ma non eseguita.
Andreas Haferburg,

8

È possibile creare un'attività che utilizza una delle seguenti opzioni come trigger per l'Utilità di pianificazione in Windows 7:

  • In orario
  • All'accesso
  • All'avvio
  • In idle
  • In un evento
  • Alla connessione alla sessione utente
  • Alla disconnessione dalla sessione utente
  • Sul blocco della workstation
  • Sblocco workstation

C'è molto con cui lavorare lì, guarderei i trigger di Inattività, Blocco workstation e Sblocco workstation. Questa è probabilmente la tua scommessa migliore.

Spero possa aiutare.


Bingo. Ho un'attività pianificata che viene eseguita SyncToyCmd.exe -Rquotidianamente, quindi dovrebbe funzionare bene anche con gli altri trigger.
Andrew Coleson,

1

Quando volevo che fosse installato, volevo un approccio a latenza molto bassa in modo da poter avviare una schermata iniziale. Per l'utilità di pianificazione si desidera impostare il trigger su "su un evento", quindi impostare su personalizzato anziché su base, quindi modificare manualmente la query nella scheda XML del trigger di evento.

Ho provato questo script per XML:

<QueryList>
  <Query Id="0" Path="System">
    <Select Path="System">*[System[Provider[@Name='Microsoft-Windows-Kernel-Power'] and (Level=4 or Level=0) and (EventID=42)]]</Select>
  </Query>
</QueryList>

Se hai bisogno che l'applicazione si avvii in un attimo, questo è il modo migliore per farlo.


0

Avendo provato alcuni dei metodi prescritti qui, non sono mai stato in grado di eseguire uno script in modalità di sospensione. Le funzionalità integrate di Utilità di pianificazione di Windows non hanno risolto il problema.

Ho trovato una piccola utility open source chiamata "Power Triggers" o "Controllo sospensione / ripresa di Windows 7" . Nonostante non sia ben rifinito o attualmente gestito, ho trovato questo strumento che funziona su Windows 10 senza problemi. Tuttavia, per eseguire facilmente uno script in caso di sospensione o ripresa, è necessario utilizzare la versione 1.01 e non l'ultima .


0

Quello che puoi fare è creare un file batch per fare tutto il necessario prima di spegnere o ibernare la macchina.

Tieni presente che dovresti eseguire le app con "Start / wait xxx.exe" in modo che il file batch attenda il completamento del comando e la sua uscita e non raggiunga la parte di arresto prima che siano completate altre attività.

L'ultimo comando in quel file dovrebbe essere "shutdown xxx yyy" dove xxx e yyy sono i parametri per il comando shutdown. Quindi puoi semplicemente eseguire questo file batch invece di utilizzare qualsiasi altro comando / applicazione di chiusura.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.