Task Manager mostra i programmi in esecuzione: come posso vedere quelli che sono stati terminati?


16

Come faccio a sapere quali programmi sono stati in esecuzione sul mio computer anche se sono stati fermati nella misura in cui Task Manager non può mostrare nulla?

Non uso il mio computer da solo e a volte sono sospettoso.


4
Se il processo è stato terminato, non verrà visualizzato nel task manager ma potrebbe essere visualizzato in un registro eventi di sistema, vedere Visualizzatore eventi.
Moab,

7
Se davvero non ti fidi delle persone che condividono il tuo computer, scoprire che cosa stavano eseguendo è probabilmente troppo poco, troppo tardi.
Cody Grey,

1
L'ironia di questa domanda è deliziosa. Dici di essere sospettoso di ciò che fanno gli altri sul computer condiviso che usi, eppure sei tu quello che cerca di curiosare su ciò che tutti gli altri hanno fatto con il loro account !!
Lightness Races con Monica

Risposte:


36

Come faccio a sapere quali programmi sono stati in esecuzione quando sono stati arrestati

Per impostazione predefinita non ci sono registri di quali programmi sono stati eseguiti.

Tuttavia, è possibile abilitare Eventi di tracciabilità dei processi nel registro eventi di sicurezza di Windows (vedere di seguito le istruzioni) e queste informazioni saranno disponibili in futuro.

Una volta abilitati gli Eventi di rilevamento processi, è possibile utilizzare i seguenti comandi Powershell per esaminare gli eventi:

Inizio del processo:

Get-EventLog Security | Where-Object {$_.EventID -eq 4688} | Format-List

Arresto del processo:

Get-EventLog Security | Where-Object {$_.EventID -eq 4689} | Format-List

I comandi precedenti scaricano le informazioni sull'evento sullo schermo.


Come utilizzare gli eventi di rilevamento processi nel registro di sicurezza di Windows

In Windows 2003 / XP si ottengono questi eventi semplicemente abilitando il criterio di controllo Tracking del processo.

In Windows 7/2008 + è necessario abilitare la creazione del processo di controllo e, facoltativamente, le sottocategorie di completamento del processo di controllo che troverai in Configurazione avanzata dei criteri di controllo negli oggetti dei criteri di gruppo.

Questi eventi sono incredibilmente preziosi perché forniscono una traccia di controllo completa ogni volta che qualsiasi eseguibile sul sistema viene avviato come processo . È anche possibile determinare la durata del processo collegando l'evento di creazione del processo all'evento di terminazione del processo utilizzando l'ID processo trovato in entrambi gli eventi. Di seguito sono riportati esempi di entrambi gli eventi.

inserisci qui la descrizione dell'immagine

Origine Come utilizzare gli eventi di rilevamento processi nel registro di sicurezza di Windows


Come abilitare la creazione del processo di audit

  1. Esegui gpedit.msc

  2. Seleziona "Impostazioni di Windows"> "Impostazioni di sicurezza"> "Criteri locali"> "Criteri di controllo"

    inserisci qui la descrizione dell'immagine

  3. Fare clic con il tasto destro del mouse su "Tracciamento del processo di controllo" e selezionare "Proprietà"

  4. Seleziona "Operazione riuscita" e fai clic su "OK"

    inserisci qui la descrizione dell'immagine


Che cos'è il monitoraggio del processo di verifica

Questa impostazione di sicurezza determina se il sistema operativo controlla gli eventi relativi al processo come la creazione del processo, la terminazione del processo, la gestione della duplicazione e l'accesso indiretto agli oggetti.

Se viene definita questa impostazione di criterio, l'amministratore può specificare se controllare solo gli esiti positivi, solo gli errori, sia gli esiti positivi che i guasti, oppure se non controllare affatto tali eventi (ovvero né esiti positivi o negativi).

Se il controllo riuscito è abilitato, viene generata una voce di controllo ogni volta che il sistema operativo esegue una di queste attività correlate al processo.

Se il controllo degli errori è abilitato, viene generata una voce di controllo ogni volta che il sistema operativo non riesce a svolgere una di queste attività.

Impostazione predefinita: nessun controllo

Importante: per un maggiore controllo sui criteri di controllo, utilizzare le impostazioni nel nodo Configurazione avanzata criteri di controllo. Per ulteriori informazioni sulla configurazione avanzata dei criteri di controllo, vedere http://go.microsoft.com/fwlink/?LinkId=140969 .


Che dire di ExecutedProgramList di Nirsoft? Posso usarlo?

ExecutedProgramList non fornisce un elenco completo dei programmi che sono stati eseguiti.

Ad esempio, non elenca nessuno dei programmi portatili che sto attualmente eseguendo dal mio thumbdrive, ad esempio Agent, Notepad ++, GSNotes e quasi tutti i programmi Cygwin che ho eseguito dal mio ultimo riavvio.

Non elencherà alcun programma che non scriva nulla nelle posizioni menzionate nel link:

L'elenco dei programmi eseguiti in precedenza viene raccolto dalle seguenti origini dati:

  • Chiave di registro: HKEY_CURRENT_USER\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache
  • Chiave di registro: HKEY_CURRENT_USER\Microsoft\Windows\ShellNoRoam\MUICache
  • Chiave di registro: HKEY_CURRENT_USER\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Persisted
  • Chiave di registro: HKEY_CURRENT_USER\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store
  • Cartella Prefetch di Windows (C: \ Windows \ Prefetch)

Source ExecutedProgramList


Ulteriori letture


Un elegante frammento di PowerShell per l'estrazione delle informazioni risultanti sarebbe una bella aggiunta a questa eccellente risposta.
Peter Mortensen,

@PeterMortensen Grazie. Anzi lo sarebbe. Sfortunatamente non conosco abbastanza bene PowerShell per scriverne uno.
DavidPostill

Il controllo della duplicazione della maniglia suona incredibilmente spam.
user253751

@PeterMortensen Sono riuscito a scrivere una riga che fornisce le informazioni;)
DavidPostill

@ user20574 Che vuoi dire?
DavidPostill

3

Nirsoft ha una piccola applicazione gratuita, ExecutedProgramList , che mostra un elenco di programmi e file batch eseguiti sul tuo sistema. Tieni presente che non è sempre in grado di mostrare l'ora dell'ultima avvio di un'applicazione, a causa delle limitazioni inerenti a Windows e, come menzionato da @DavidPostill, potrebbero mancare le app portatili.

Deriva le sue informazioni da Windows, quindi non deve essere in esecuzione per compilare il suo elenco.


1
ExecutedProgramListnon fornisce un elenco completo dei programmi eseguiti. Ad esempio, non elenca uno dei programmi portabili Sono attualmente in esecuzione dalla mia pen drive, ad esempio Agent, Notepad++, GSNotescosì come quasi tutti i Cygwinprogrammi che ho eseguito dal mio ultimo riavvio. Quindi non è molto completo .
DavidPostill

Non elencherà alcun programma che non scriva nulla nelle posizioni menzionate nel link.
David Post

Come funziona? Campiona continuamente i processi attualmente in esecuzione? O viene avvisato da Windows all'avvio e all'arresto dei processi?
Peter Mortensen,

@PeterMortensen Vedi la fine della mia risposta per come funziona. E ha bisogno di un aggiornamento manuale.
DavidPostill

1

Cronologia del processo fa questo. È un database di processo gratuito e portatile.

È un semplice download .zip portatile. C'è un manuale su come usarlo con i video sul sito di download.

Fino a quando la cronologia dei processi è in esecuzione, è possibile eseguire query sui processi che sono terminati tramite una GUI separata.

Funzionerà su qualsiasi versione di Windows da XP.

(Sono l'autore di questo software open source.)

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.