我想使用MSAA自動化簡單的Windows應用程序。我沒有得到如何找到控制(如說TextBox
和Button
)並獲得它們的價值(例如獲取值爲TextBox
並在按鈕的情況下點擊)的想法。如何使用MSAA自動化簡單的Windows窗體應用程序?
回答
以下假設你將開發在C/C++的自動化程序,因爲我不知道它會很容易使用MSAA從.NET(有可能,但!)
如果您不想使用C++,您可以使用.NET的MS UI Automation進行調查。
要開始開發使用MSAA和C++自動化客戶端應用程序,我建議:
將安裝Inspect.exe工具 - 找到下:
Programs > Microsoft Windows SDK v7.1 > Tools > Inspect Objects
啓動Inspect.exe並將左上角的下拉菜單從「UI Automation」切換到「MSAA」
啓動您的應用程序並將鼠標懸停在UI元素上 - 元素的MSAA屬性應顯示在Inspect.exe中
寫您的自動化代碼:)
一個重要的選擇將是決定是否使用事件驅動技術,以找到您的元素,或者乾脆開始在頂層(桌面),發現您的應用在桌面的子元素中,並深入到您的應用元素中樹從那裏。
有上codeproject.com一個很好的事件驅動MSAA教程在:http://www.codeproject.com/Articles/18290/Introduction-to-Microsoft-Active-Accessibility
教程在MSAA基於樹的導航似乎有點更加稀缺。我將開始與MS文檔 - 我推薦第一種:
Active Accessibility Client Interfaces and Functions
你爲什麼要使用MSAA自動化?微軟目前的方式是UI Automation。
維基百科(重點煤礦):
UIA是類似之處在於它 提供用於暴露和收集有關用戶 界面元素的裝置Microsoft活動輔助(MSAA),並控制,以支持用戶接口 輔助功能和軟件測試自動化。 但是,UIA是一種更新的 技術,它提供了比MSAA更豐富的對象模型...
隨着UI自動化您可以通過創建一個本地或.NET應用程序自動或使用第三方工具,如RIATest依賴於UI自動化。
(Disclamer:我隸屬於RIATest)。
- 1. 使用Windows窗體應用程序自動登錄用戶?
- 2. 美化Windows窗體應用程序
- 3. 推薦使用Windows窗體應用程序的UI測試自動化工具
- 4. 簡單的Windows web窗體應用程序到asp.net應用程序
- 5. 自動CRUD表單生成.net Windows窗體應用程序
- 6. Windows窗體應用程序
- 7. 使用C#Windows窗體應用程序
- 8. Windows窗體應用程序使用HTML
- 9. 在Windows窗體應用程序中使用boost序列化
- 10. 如何正確初始化Windows窗體應用程序
- 11. Squish,Python,Windows應用程序自動化
- 12. 如何在Windows窗體應用程序中使用Ninject?
- 13. 如何在C/C++應用程序中使用Windows窗體?
- 14. 如何使用Microsoft混合按鈕,Windows窗體應用程序
- 15. 如何在Windows窗體應用程序VB.net中使用會話?
- 16. c#如何在Windows窗體應用程序中使用方法?
- 17. 如何在Windows窗體應用程序(VB.NET)中使用UdpClient.BeginReceive
- 18. Windows窗體應用程序:如何設置表單命令?
- 19. 如何將Windows窗體應用程序轉換爲Windows商店應用程序?
- 20. 如何使我的Windows窗體應用程序變成皮膚?
- 21. 構建ASP.NET MVC 2應用程序的簡單自動化
- 22. Windows窗體應用程序中的Windows.Web.Http?
- 23. Windows窗體應用程序中的WCF
- 24. 帶Web應用程序的Windows窗體
- 25. Windows窗體應用程序的定位
- 26. Windows窗體應用程序中的SQLException
- 27. Windows窗體上的TextBased應用程序
- 28. 使用C#/ Windows窗體的簡單動畫
- 29. 如何在Windows窗體應用程序上自動執行一些操作?
- 30. 如何在Windows窗體應用程序中創建自動登錄?
我打算自動化的應用程序是使用MSAA技術。 – CSharp 2013-05-13 06:21:19
@CSharp,你的應用程序使用MSAA技術的事實不應該使它不適合UIA的自動化。實際上,UIA將在內部在需要時使用MSAA。 – 2013-05-14 07:38:04