博碩士論文 110525007 詳細資訊




以作者查詢圖書館館藏 以作者查詢臺灣博碩士 以作者查詢全國書目 勘誤回報 、線上人數:117 、訪客IP:52.15.158.238
姓名 陳宏輔(Hung-Fu Chen)  查詢紙本館藏   畢業系所 軟體工程研究所
論文名稱 利用軟體 UI 實現擴充功能 突破原始碼限制的工具
相關論文
★ CRUnit - Capture / Replay Based Unit Testing★ Locating Interested Code by Program Execution Paths with Debugger
★ An OpenStack Based Testing as a Service Platform★ Visualize Ripple Effect with Analyzing Object-Oriented Design Relationship
★ Change History Tracing Tool for Arbitrary Programming Language★ Virtual Objects for Program Visualization in xDIVA
★ Enhance Stress Testing Power by Synchronizing JMeter Test Scripts★ 以 GDB 實作 XThreadDebugger-Linux(XTD-Linux)提供 Linux 平台之多執行緒除錯
★ 支援版本控制系統之文件撰寫工具★ Korat: An O.S.-independent Capture/Replay Test Automation System
★ GUI Component Detection for Cross-Platform Applications–Using Input Device and Image Change Synergistic Detection Method★ 應用設計模式於 RPA 軟體 實作低維護成本的屬性面板自動修正功能
★ 使用靜態分析偵測 JavaScript 應用程式中的 Race Condition★ 基於物件導向與 Clean Code 概念進行 xDiva 重構與優化
★ 基於xDIVA之利用關鍵影格將3D物件動畫化與即時保存的視覺化工具★ Time capsules of code: 使用穿越時空的訊息來解決程式碼 註解的弊病
檔案 [Endnote RIS 格式]    [Bibtex 格式]    [相關文章]   [文章引用]   [完整記錄]   [館藏目錄]   至系統瀏覽論文 (2028-7-28以後開放)
摘要(中) 一款軟體的誕生必然是為了解決現有的需求,但隨著時間的流逝也必然會出現原始開發者沒有設想過的需求,這時原始開發者可以選擇開源(open source)或更常見的提供API和Extension/Plugin等方法,讓第三方開發者不用接觸到原始碼(source code)的情況下也能進行擴充功能的開發。然而這些擴充方法終究只屬於少數知名軟體,絕大部分的軟體在其開發過程中,通常不會優先考慮第三方開發者的擴充需求,但這又是一個十分迫切和常見的需求,因此本論文開發了一套SDK,該SDK使用嶄新的方法,讓第三方開發者無需依賴原始開發者就可以進行擴充功能的開發。
本論文開發的SDK,專注於擴充Microsoft Windows作業系統的桌面軟體。該SDK運用一個名為Parasite的透明視窗來完成擴充功能,Parasite會依附於一個名為Host的主程式視窗。Parasite可以根據Host的UI變化來顯示對應的功能,如此,第三方的開發者就可以在沒有原始碼也沒有API或Extension/Plugin的情況下開發需要的擴充功能。
摘要(英) The birth of a software application is inevitably driven by the need to address existing requirements. However, as time passes, unforeseen needs arise that the original developers may not have anticipated. In such cases, the original developers can choose to make the software open source or, more commonly, provide methods such as APIs and extensions/plugins, allowing third-party developers to extend the software′s functionality without having access to the source code. However, these extension methods are ultimately limited to a few well-known software applications, as the majority of software does not consider the needs of third-party developers. Nevertheless, this is a highly urgent and common requirement. Therefore, this paper has developed an SDK that utilizes innovative methods, enabling third-party developers to extend the functionality of desktop software without depending on the original developers.
This paper introduces an SDK that focuses on extending desktop software for the Microsoft Windows operating system. The SDK employs a novel approach using a transparent window called "Parasite" to achieve the extension functionality. Parasite attaches itself to a main program window called the "Host." By adapting to changes in the Host′s user interface, Parasite can display corresponding functionality. Consequently, third-party developers can develop the desired extensions without the need for access to the source code or APIs and extensions/plugins.
關鍵字(中) ★ 擴充程式 關鍵字(英) ★ Microsoft Accessibility API
論文目次 摘要 i
Abstract ii
目錄 iii
圖目錄 v
表目錄 vii
一、緒論 1
二、研究背景與相關技術 5
2-1 傳統的擴充方法 -- API / Extension / Plugin 5
2-2 Microsoft Accessibility API 6
2-2-1 Windows API 7
2-2-2 Microsoft Active Accessibility 8
2-2-3 Microsoft UI Automation 10
2-3 Microsoft Accessibility API 的應用 15
2-3-1 Coded UI 15
2-3-2 UiPath 16
三、運用UI開發擴充的問題分析 18
3-1 使用Parasite和Host概念開發擴充 18
3-2 選擇需要的UI 20
四、SDK的設計與架構 24
4-1 選擇/驗證/修改目標UI 24
4-2 使用Parasite實作擴充功能 29
4-2-1 如何使用Parasite進行介面設計 29
4-2-2 Parasite取得和操作UI 30
4-3 SDK的架構設計 32
五、評估SDK的設計 34
5-1 開發擴充功能的方式的差異 34
5-2 SDK和單純使用Microsoft Accessibility API的差異 36
六、結論與未來展望 40
七、參考資料 41
參考文獻 [1] Flash Player Chrome 停用 [Online]. Available: https://support.google.com/chrome/answer/6258784?hl=zh-Hant. [Accessed 11 Jun 2023].
[2] Spy++ [Online]. Available: https://learn.microsoft.com/en-us/visualstudio/debugger/spy-increment-help?view=vs-2022 [Accessed 11 Jun 2023].
[3] John Mueller. Accessibility for Everybody Understanding the Section 508 Accessibility Requirements, Apress , 2003
[4] J. Carter, M. Markel, “Web accessibility for people with disabilities: an introduction for Web developers”, IEEE, 2001
[5] Microsoft Active Accessibility [Online]. Available: https://learn.microsoft.com/en-us/windows/win32/winauto/technical-overview. [Accessed 11 Jun 2023].
[6] AccExplorer [Online]. Available: https://learn.microsoft.com/en-us/windows/win32/winauto/ui-accessibility-checker [Accessed 11 Jun 2023].
[7] Inscpect [Online]. Available: https://learn.microsoft.com/en-us/windows/win32/winauto/inspect-objects [Accessed 11 Jun 2023].
[8] HAVERTY, Rob. “New accessibility model for Microsoft Windows and cross platform development” ACM SIGACCESS Accessibility and Computing, 2005, 82: 11-17.
[9] Microsoft UI Automation for .NET developers [Online]. Available: https://learn.microsoft.com/en-us/dotnet/framework/ui-automation/2 [Accessed 11 Jun 2023].
[10] Windows Automation API 3.0 [Online]. Available: https://learn.microsoft.com/en-us/windows/win32/winauto/uiauto-uiautomationoverview [Accessed 11 Jun 2023].
[11] Accessibility Insights [Online]. Available: https://accessibilityinsights.io/ [Accessed 11 Jun 2023].
[12] UISpy [Online]. Available: https://learn.microsoft.com/en-us/previous-versions/ms727247(v=vs.110)?redirectedfrom=MSDN [Accessed 11 Jun 2023].
[13] ZAJICEK, M.; VENETSANOPOULIS, I.; MORRISSEY, W. “Web access for visually impaired people using active accessibility.” In: Proceedings of the Human Factors and Ergonomics Society Annual Meeting. Sage CA: Los Angeles, CA: SAGE Publications, 2000. p. 445-448.
[14] LEE, Hae-Na; ASHOK, Vikas; RAMAKRISHNAN, I. V. “Rotate-and-Press: A Non-visual Alternative to Point-and-Click?.” In: HCI International 2020–Late Breaking Papers: Universal Access and Inclusive Design: 22nd HCI International Conference, HCII 2020, Copenhagen, Denmark, July 19–24, 2020, Proceedings. Cham: Springer International Publishing, 2020. p. 291-305.
[15] MANOJ, G.; KUMAR BEERANUR, Ravi; PRAKASH, K. R. “Designing a Software Test Automation Framework for Windows Application using Coded UI in Visual Studio Tool and Page Object Design.” i-Manager′s Journal on Software Engineering, 2018, 12.4: 1.
[16] GARG, Navneesh; MITTAL, Vaibhav. “Test Automation using Microsoft Coded UI with C# Step by Step Guide.” 2016.
[17] CHANDRASEKARA, Chaminda; HERATH, P. “Hands-On Functional Test Automation.” Apress, 2019.
[18] NAGARANI, P.; VENKATARAMANACHARY, R. “A tool based approach for automation of GUI applications.” In: 2012 Third International Conference on Computing, Communication and Networking Technologies (ICCCNT′12). IEEE, 2012. p. 1-6.
[19] Use Coded UI tests to test your code [Online]. Available: https://learn.microsoft.com/en-us/visualstudio/test/use-ui-automation-to-test-your-code?view=vs-2022 [Accessed 11 Jun 2023].
[20] Extend coded UI tests and action recordings [Online]. Available: https://learn.microsoft.com/en-us/visualstudio/test/extending-coded-ui-tests-and-action-recordings-to-support-microsoft-excel?view=vs-2022 [Accessed 13 Jun 2023].
[21] Changes to Coded UI Test in Visual Studio 2019 [Online]. Available: https://devblogs.microsoft.com/devops/changes-to-coded-ui-test-in-visual-studio-2019/ [Accessed 13 Jun 2023].
[22] UiPath [Online]. Available: https://www.uipath.com/ [Accessed 13 Jun 2023].
[23] 劉蓉綺:〈Windows桌面應用程式的擴增實境〉。碩士論文,國立中央大學資訊工程學系,2022。
指導教授 鄭永斌(Yung-Pin Cheng) 審核日期 2023-8-2
推文 facebook   plurk   twitter   funp   google   live   udn   HD   myshare   reddit   netvibes   friend   youpush   delicious   baidu   
網路書籤 Google bookmarks   del.icio.us   hemidemi   myshare   

若有論文相關問題,請聯絡國立中央大學圖書館推廣服務組 TEL:(03)422-7151轉57407,或E-mail聯絡  - 隱私權政策聲明