Как получить дескриптор главного окна Process в C#?

Цель состоит в том, чтобы программно запустить Windows Form, получить ее дескриптор и отправить информацию в ее функцию wndProc(), используя функцию Win Api SendMessage().

Я позаботился о части SendMessage(), но теперь проблема заключается в получении дескриптора формы после запуска процесса.

Сначала я предположил, что свойство MainWindowHandle процесса даст мне дескриптор, который я ищу, но после запуска процесса MainWindowHandle остается равным 0, и следующий код не показывает дескриптор процесса, который я только что запустил:

foreach (Process p in Process.GetProcesses())
{
Console.WriteLine(p.MainWindowHandle);
}

Может ли кто-нибудь сказать мне, как это сделать и можно ли это сделать на самом деле?

8
задан John Smith 3 June 2012 в 02:41
поделиться