我在Visual Studio中使用C#编写了一个基本的Windows窗体应用程序,它有一些按钮可以打开带有更多按钮的窗口。它没有做任何有用的事情,我使用它来尝试使用PowerShell模拟一系列按钮按下。
我正在尝试学习powershell,我一直在网上看看如何使用powershell打开windows form exe然后单击表单上的按钮,然后单击弹出窗口中的另一个按钮起来。
到目前为止,我可以打开可执行文件,但这非常简单。
我正在考虑使用sendkeys方法。也许我可以将键盘快捷键与按钮相关联,然后在这些快捷键中使用powershell类型。
或者当exe打开时,powershell会在标签上点击一定次数,直到按钮被聚焦,然后点击进入。
我确信有一种更简单的方法可以做到这一点。任何指导或指示将不胜感激。
答案 0 :(得分:0)
从PowerShell执行此操作的最佳方法是更改C#中的按钮文本以在文本中使用&
包含快捷键,对于显示“Open Form”的按钮,您可以设置文本到Open &Form
,Alt + F
会通过快捷方式点击按钮。
来源:Creating Access Keys for Windows Forms Controls
然后,从您的PowerShell脚本中,您只需使用SendKeys
模拟Alt + F
点击该按钮。
TechNet的修改示例:
[void] [System.Reflection.Assembly]::LoadWithPartialName("'Microsoft.VisualBasic")
[Microsoft.VisualBasic.Interaction]::AppActivate("<NAME OF YOUR APPLICATION>")
[void] [System.Reflection.Assembly]::LoadWithPartialName("'System.Windows.Forms")
[System.Windows.Forms.SendKeys]::SendWait("%F")