У меня есть сценарий PowerShell, который запускает программу с Start-Process с параметром -WindowStyle Minimized, эта программа запускает другой процесс, который отображается как дочерний процесс на панели задач, поэтому для его вывода на передний план мне нужно щелкните по нему и выберите правильное окно.
Теперь я пытаюсь, чтобы мой сценарий автоматически выводил программу на передний план при выполнении условия. Я нашел метод ниже, который прекрасно работает, когда процесс, запущенный на панели задач, не имеет дочернего процесса. Однако дочерний процесс, который я хочу вывести на первый план, не работает с этим методом. Если я использую родительский процесс, он будет работать.
$sig = '[DllImport("user32.dll")] public static extern bool
ShowWindowAsync(IntPtr hWnd, int nCmdShow);'
Add-Type -MemberDefinition $sig -name NativeMethods -namespace Win32
$hwnd = @(Get-Process | Where-Object {$_.Name -eq "notepad"})
[0].MainWindowHandle
[Win32.NativeMethods]::ShowWindowAsync($hwnd, 2)
[Win32.NativeMethods]::ShowWindowAsync($hwnd, 4)
Кто-нибудь знает, как я могу заставить это работать с дочерним процессом панели задач?