я пишу код для завершения определенных процессов через определенное время. я использую приведенный ниже код (упрощенный для публикации):
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT Name, CreationDate FROM Win32_Process WHERE Name = 'foo'");
foreach (ManagementObject process in searcher.Get())
{
process.InvokeMethod("Terminate", null);
}
проблема - использование оператора WQL SELECT Name, CreationDate
вызывает исключение при попытке выполнить завершение:
"Operation is not valid due to the current state of the object."
... но использование SELECT *
работает и завершает процесс. почему это -- есть ли в наборе результатов определенный столбец WMI?
Благодарность!