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.
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.
Risposte:
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.
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.
Origine Come utilizzare gli eventi di rilevamento processi nel registro di sicurezza di Windows
Esegui gpedit.msc
Seleziona "Impostazioni di Windows"> "Impostazioni di sicurezza"> "Criteri locali"> "Criteri di controllo"
Fare clic con il tasto destro del mouse su "Tracciamento del processo di controllo" e selezionare "Proprietà"
Seleziona "Operazione riuscita" e fai clic su "OK"
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 .
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
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.
ExecutedProgramList
non 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++
, GSNotes
così come quasi tutti i Cygwin
programmi che ho eseguito dal mio ultimo riavvio. Quindi non è molto completo .
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.)