Как установить фокус на процесс? - PullRequest
0 голосов
/ 10 октября 2018

У меня есть переменная System.Diagnostics.Process с именем _program.

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

Но, если предположить, что у этого процесса есть интерфейс, можно ли сфокусироваться на нем?Может быть, мне нужно использовать Process.StandardInput?

1 Ответ

0 голосов
/ 10 октября 2018

Используйте PInvoke для вызова собственной функции для установки окна переднего плана:

using System.Runtime.InteropServices;

DllImport("User32.dll")]
private static extern Int32 SetForegroundWindow(int hWnd);

void YourMethod()
{
  Process p = ... //However you create your process
  SetForegroundWindow(p.MainWindowHandle);  //Set this process's main window as the foreground window
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...