Windows 是否有方法使用powershell在应用程序中单击按钮

Windows 是否有方法使用powershell在应用程序中单击按钮,windows,powershell,Windows,Powershell,使用powershell代码,我想打开应用程序并单击任何选项。如打开记事本+,然后单击文件-->新建 这是在powershell控制台中运行的独立脚本 我试着像这样抓住记事本++窗口手柄 $WindowHandle = Get-Process | Where-Object { $_.MainWindowTitle -Match $WindowTitle } | Select-Object -ExpandProperty MainWindowHandle 但是我不能点击它 打开记事本++ sta

使用powershell代码,我想打开应用程序并单击任何选项。如打开记事本+,然后单击文件-->新建

这是在powershell控制台中运行的独立脚本

我试着像这样抓住记事本++窗口手柄

$WindowHandle = Get-Process | Where-Object { $_.MainWindowTitle -Match $WindowTitle } | Select-Object -ExpandProperty MainWindowHandle
但是我不能点击它

打开记事本++

start-process "C:\Program Files\Notepad++\notepad++.exe"
抓住窗户

 $WindowHandle = Get-Process | Where-Object { $_.MainWindowTitle -Match $WindowTitle } | Select-Object -ExpandProperty MainWindowHandle

任何可以帮助我抓取notepad++上的控件并单击选项或按钮的代码片段。

如果所有要执行的操作都有快捷方式,您只需将键发送到窗口即可

例如,要打开新文件,可以使用
CTRL+N

start-process "C:\Program Files\Notepad++\notepad++.exe"
$WindowHandle = Get-Process | Where-Object { $_.MainWindowTitle -Match $WindowTitle } | Select-Object -ExpandProperty MainWindowHandle

[void][System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms')
[System.Windows.Forms.SendKeys]::SendWait("^{n}")
编辑: 当您在记事本++中按
ALT
时,它将显示可用于打开不同菜单的快捷方式

要打开
文件
,可以使用
ALT+F
(F带下划线,表示这是快捷方式)。 之后,您可以使用键向下/向上导航以选择所需内容。大多数应用程序都会有这种行为

除此之外,在Notepad++中,您还可以将几乎任何操作映射到一个键组合。但是,这意味着您的脚本只能在您的PC上运行,并带有您的设置


谢谢您的代码。我需要一个帮助。如果不使用ctrl+n,如果我想单击应用程序中的任何按钮,这是可能的。?当您在记事本++中按
ALT
键时,它将显示所有菜单选项卡的快捷方式。大多数应用程序都启用了此功能(或应该启用:))。我将用我的意思编辑我的答案。
[System.Windows.Forms.SendKeys]:SendWait(^{n}”)
知道如何将该键发送到
$WindowHandle
窗口?它是否在本地环境中查找显式命名为
$WindowHandle
的变量?