Показать все процессы в приложении AnyCPU - PullRequest
2 голосов
/ 01 июня 2011

Я пишу приложение для любого процессора.Когда я запускаю следующее на 64-битном ПК, он не будет работать:

System.Diagnostics.Process[] running = System.Diagnostics.Process.GetProcesses();
for (int i = 0; i < running.Length; i++){
    try{
        Console.WriteLine(running[i].MainModule.FileName);
    }
    catch (Exception ex){}
}

Он показывает только 32-битные процессы в массиве, работающем, потому что он работает в 32-битном режиме.Есть ли обходной путь для этого?

Ответы [ 2 ]

3 голосов
/ 01 июня 2011

Я получил ответ:

running[i].MainModule.FileName

не поддерживается 64-битными процессами.По этой причине мой код всегда вызывал исключение.Таким образом, 64-битные процессы не были перечислены.

0 голосов
/ 01 июня 2011

Возможно ли, что вы обращаетесь к устаревшим полям?

http://msdn.microsoft.com/en-us/netframework/aa569609

...