uiautomation powershell 插件例子解析
作者给出了示例,不过在中文版Windows上需要略微修改下。因为中文版的进程名名字跟程序名字可能不一样。作者给出里例子是按首字母排序的 不太符合从基础到复杂的学习过程。但是可以从时间排序看出作者的编写思路。
0。导入库
导入这两个,TMX是用来做测试的。路径按自己实际情况改
ipmo D:\UIAutomation.0.8.7B3.NET40\UIAutomation.dll
ipmo D:\UIAutomation.0.8.7B3.NET40\TMX.dll
1 Caching in UI Automation Clients
这个我没看懂,大概是说这样运行会更快 。命令
Start-UiaCachedMode -Property Name,AutomationId,ClassName,ControlType,Value -Pattern InvokePattern,ValuePattern -Scope Descendants -Filter Raw -Verbose
2。点击
2. 1 简单按钮点击。打开计算器并点击按钮1。因为计算器的进程名在中文版里就是 计算器 而不是calc ,所以需要修改下源程序
# ipmo UIAutomation; # variant 1 Start-Process calc
Get-UIAWindow -n 计算器 | Get-UIAButton -Name 一 | Invoke-UIAButtonClick; # variant 2 $button1 = Start-Process calc -PassThru | Get-UIAWindow -n 计算器 | Get-UIAButton -Name 一; $button1 | Invoke-UIAButtonClick; # variant 3 $button1 = Start-Process calc -PassThru | Get-UIAWindow -n 计算器 | Get-UIAButton -Name 一; Invoke-UIAButtonClick -InputObject $button1; # variant 4 Invoke-UIAButtonClick -InputObject (Start-Process calc -PassThru | Get-UIAWindow -n 计算器 | Get-UIAButton -Name 一);
2.2 右击和双击
services.msc #run powershell as administrator 用管理员权限启动posh # open the Connect... window via right click on the tree item 右击树项 打开 连接到 窗口 #Get-UIAWindow -n services | Get-UIATreeItem | Invoke-UIAControlContextMenu | Get-UIAMenuItem -n connect* | Invoke-UIAMenuItemClick; #Get-UIAWindow -pn mmc -n *select*computer* | Get-UIAButton Cancel | Invoke-UIAButtonClick; Get-UIAWindow -n 服务 | Get-UIATreeItem | Invoke-UIAControlContextMenu | Get-UIAMenuItem -n 连接* | Invoke-UIAMenuItemClick; Get-UIAWindow -n 选择计算机 | Get-UIAButton 取消 | Invoke-UIAButtonClick; # double click on a service in the grid: 在网格上双击 #Get-UIAWindow -n services | Get-UIADataGrid | Get-UIADataItem BranchCache | Invoke-UIAControlClick -DoubleClick; Get-UIAWindow -n 服务 | Get-UIADataGrid | Get-UIADataItem BranchCache | Invoke-UIAControlClick -DoubleClick;
标签:uia,插件,8.7,Invoke,Get,UIAButtonClick,计算器,UIAButton,UIAWindow From: https://www.cnblogs.com/kyo413/p/17035832.html