0
是否有可能獲取基於它的子窗口句柄在PowerShell中的進程ID?通過窗口句柄獲取父進程ID
例如,這個劇本找窗口句柄與titile「警告」:
$sig = @"
[DllImport("user32.dll", CharSet = CharSet.Unicode)]
public static extern IntPtr FindWindow(IntPtr sClassName, String sAppName);
[DllImport("kernel32.dll")]
public static extern uint GetLastError();
"@
$fw = Add-Type -Namespace Win32 -Name Funcs -MemberDefinition $sig -PassThru
$wname='Warning'
$find_window = $fw::FindWindow([IntPtr]::Zero, $wname)
Write-Host $find_window
它是如何顯示在任務管理器:
Program.exe
|
\Warning
現在我需要確定 - 什麼PID有此警告窗口。我知道可以在C#中實現(我根本不使用它),但是這隻能在PowerShell中完成。