我想找到並點擊托盤圖標按鈕(Windows 10)。 傭工從這裏開始了: https://blogs.msdn.microsoft.com/oldnewthing/20141013-00/?p=43863Windows用戶界面自動化:點擊托盤圖標按鈕
一切工作正常,但是當應用程序點擊按鈕名稱爲「Dropbox的」真的聽到喀嗒聲 名稱爲「OneDrive」,這是在托盤區太另一個按鈕:
foreach (var icon in EnumNotificationIcons())
{
var name = icon.GetCurrentPropertyValue(AutomationElement.NameProperty) as string;
Console.WriteLine(name);
if (name.StartsWith("Dropbox"))
{
Console.WriteLine(@"Click!");
icon.InvokeButton();
break;
}
}
有什麼不對?
本機有2臺顯示器。 我在另一臺電腦上測試了winth win7和1臺顯示器 - 它的工作原理。
更新。
我已經在3臺具有不同DPI設置的機器上運行我的應用程序。在所有這些機器上,我安裝了目標應用程序。當然,此圖標的位置不應該是相同的,但似乎我的,爲什麼我的應用程序托盤button.Invoke不工作的原因:在DPI的情況下爲100%
有結果:
1.100% - 我的應用程序工作正常。
點擊= 1741,X = 1000
應用程序:
BoundingRectangle:L:1741噸:1000,寬度= 40,高度= 40
Inspector.exe: BoundingRectangle:{1:1741 T:1000轉:1781 b:1040}
2.150% - 我的應用程序不工作
應用程序: BoundingRectangle:X = 2464,Y = 1400,寬度= 60,高度= 60
Inspector.exe: BoundingRectangle:{1:3606噸:2040 R:3666 B:2100}
3.175% - 我的應用程序不能正常工作
應用: BoundingRectangle:L:1977年,T :1214,寬度= 70,身高= 70
Inspector.exe: BoundingRectangle:{1:3460噸:2020 R:3530 b:2090}
如何解決原有的任務:如何點擊任何DPI設置情況下的圖標?