Ho utilizzato ManagementEventWatcher negli ultimi mesi per controllare l'avvio di nuovi processi e ha funzionato senza problemi. Tuttavia, ho appena provato di recente la mia app, e sembra che gli eventi per un nuovo processo non vengano più richiamati.ManagementEventWatcher per Win32_ProcessStartTrace non funziona più in Win 8.1
Ecco il codice di esempio:
var startWatch = new ManagementEventWatcher(new WqlEventQuery("SELECT * FROM Win32_ProcessStartTrace"));
e l'evento:
private static void ProcessStart_EventArrived(object sender, EventArrivedEventArgs e)
{
Console.WriteLine("AppStarted");
}
Ho anche provato questo sulla macchina di un altro amico (Win anche 8.1) che ha avuto un vecchio binario (che ha lavorato solo anche negli ultimi mesi) e non riceve più neanche gli eventi.
Il problema sembra esistere solo con Win32_ProcessStartTrace perché Win32_ProcessStopTrace funziona correttamente e riceve eventi quando un processo si interrompe.
Ultimamente ci sono stati aggiornamenti di Windows che potrebbero interferire con questo? L'ambiente del mio sistema non è cambiato da quando ha funzionato l'ultima volta (a parte gli aggiornamenti di vincita).
I repro, è attualmente rotto. Se non si desidera chiamare il supporto Microsoft, attendere semplicemente l'aggiornamento un po 'inevitabile. –
Qualcuno sa se Microsoft risolverà mai questo? – TTat
Sembra che sia stato corretto! – TTat