C #: получить WindowHandles всех окон по Processname - PullRequest
2 голосов
/ 17 декабря 2010

есть приложение с 5 окнами.У меня есть PID этого процесса, и как я могу получить все WindowHandles этого процесса?

спасибо.

Ответы [ 3 ]

1 голос
/ 17 декабря 2010

Получите MainWindowHandle и затем вызовите EnumChildWindows для него.

Возможно, вызов управляемого кода будет лучше, чем PInvoke , вы можете найти больше здесь Управляемый API Windows

0 голосов
/ 17 декабря 2010

Пользователь что-то вроде этого:

Process[] processes = Process.GetProcesses(".");
foreach (var process in processes)
{
    var handle = process.MainWindowHandle;
}
0 голосов
/ 17 декабря 2010

Начните с некоторых вещей PInvoke, описанных в этой статье MSDN .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...