共用方式為


輔助功能工具 - AccEvent (無障礙事件監看員)

AccEvent (Accessible Event Watcher) 可讓開發人員和測試人員驗證應用程式的 UI 元素在 UI 變更發生時引發適當的Microsoft UI 自動化,並Microsoft作用中輔助功能事件。 當焦點變更,或叫用、選取UI元素或具有狀態或屬性變更時,可能會發生UI中的變更。

AccEvent 隨 Windows 軟體開發工具包 (SDK) 一起安裝。 它位於 SDK 安裝路徑的 \bin\<版本>\<平臺> 資料夾中(Accevent.exe)。

注意

AccEvent 是舊版工具。 建議您改用 Accessibility Insights

要求

AccEvent 可用來檢查沒有使用者介面自動化之系統上的輔助功能數據,它原本是針對Microsoft Active Accessibility 所撰寫。 若要檢查 UI 自動化,使用者介面自動化必須存在於系統上。 如需詳細資訊,請參閱 UI 自動化的一節。

AccEvent 會安裝為 Windows SDK 中整體工具集的一部分,因此不會以個別的 exe 下載方式散發。 Windows SDK 包含本節記載的所有輔助功能相關工具。 取得 Windows SDK。 (如果您需要舊版,也有從該頁面連結的 SDK 下載封存。

若要執行 AccEvent,請在 \bin\<版本>\<平臺> 資料夾尋找 AccEvent.exe,然後執行它(您通常不需要以系統管理員身分執行)。

可存取的事件監看員視窗

當您啟動 AccEvent時,主視窗隨即顯示。 主要 AccEvent 視窗會顯示執行中應用程式所引發的 UI 自動化或Microsoft Active Accessibility 事件。 主視窗有下列主要部分:

  • 標題列。 顯示目前的作業模式和狀態。
  • 功能表欄。 提供對 AccEvent 功能 的存取權。
  • 數據檢視。 顯示每個事件的相關信息,包括引發事件之 UI 元素的事件識別碼和選取的屬性。

AccEvent 只有圖形用戶介面;此工具沒有命令行自變數,但您可以使用其他工具來將輸出記錄檔當做文字來處理。

下圖顯示 [AccEvent ] 視窗的主要

可存取事件監看員工具的使用者介面

可存取的事件監看員工作

本節包含常用 AccEvent 工作的相關信息。

設定作業模式

您可以使用 [模式] 功能表來設定 AccEvent 作業模式,然後選取控制工具行為的設定。 您可以選取下列選項。

選取此選項時 AccEvent 會執行此工作
永遠在頂端 出現在畫面上任何其他使用者介面的頂端。
UIA 事件 顯示使用者介面自動化事件的相關信息。
WinEvents (內容中) 顯示傳遞至伺服器位址空間中連結函式之作用中輔助功能事件 (WinEvents) Microsoft的相關信息。 如需詳細資訊,請參閱 In-Context Hook Functions
WinEvents (內容不足) 顯示傳遞至用戶端位址空間中之攔截函式Microsoft Active Accessibility 事件 (WinEvents) 的相關信息。 如需詳細資訊,請參閱 內容外攔截函式
顯示醒目提示矩形 反白顯示引發所選事件的UI元素周圍的矩形。
顯示資訊工具提示 在工具提示中顯示事件資訊。
設置 顯示 UIA 事件設定WinEvent 設定 對話框。

 

篩選UI自動化事件

若要設定 [AccEvent] 視窗中顯示的 UI 自動化事件和屬性,請單擊 [模式] 功能表,選取 [UIA 事件],然後選取 [設定]。 [UIA 事件設定] 對話框隨即顯示。 您也可以使用此對話框來篩選事件。

UIA 事件設定 對話框包含下列窗格:

  • 全域事件

    選取 [FocusChangedEvent] 複選框,以顯示全域焦點變更事件的相關信息。

  • 事件類型

    選取您感興趣的事件。

  • 範圍

    選取您想要 AccEvent 接聽事件的 UI 元素。

  • 包含來自 的事件

    如果您從 [範圍] 窗格中選取之 UI 元素的即時子元素看到事件,請選取 [實時子系]。 如果您要查看所有子代元素的事件,請選取 [所有子系] [所有子系]

  • 報表屬性

    選取要在主視窗中每個事件之後顯示的屬性。 如果在 模式 選單中選取 [顯示資訊工具提示],則選取的屬性也會顯示在工具提示中。

篩選作用中輔助功能事件

若要設定 [AccEvent] 視窗中顯示的 Microsoft Active Accessibility 事件和屬性,請單擊 [模式] 功能表,選取 [WinEventsWinEvents],然後選取 [設定]。 [WinEvent 設定] 對話框隨即顯示。 您也可以使用此對話框來篩選事件。

WinEvent 設定 對話框包含下列窗格:

  • 物件

    選取您想要 AccEvent 接聽事件的物件。 AccEvent 可以接聽源自視窗、游標或插入號的事件。 預設會選取 [視窗]。

  • 事件

    選取您感興趣的事件。 默認會顯示所有事件。

  • 事件資訊

    選取主視窗中每個事件名稱之後所要顯示的資訊。

  • 物件屬性

    選取要在主視窗中每個事件之後顯示的屬性。 如果在 模式 選單中選取 [顯示資訊工具提示],則選取的屬性也會顯示在工具提示中。 默認會選取 名稱角色狀態

  • 篩選

    選取篩選區段中的其中一個單選按鈕,以篩選 hWNDs 欄位中指定的視窗所引發的事件。 預設會選取 [不要篩選 單選按鈕]

    • 選取 [排除] 單選按鈕,只顯示從指定視窗以外的對象引發的事件。
    • 選取 [僅包含 單選按鈕] 並指定一或多個視窗句柄,只顯示從這些視窗引發的事件。
    • 核取 和子系 複選框,以包含指定視窗子代引發的事件。
  • 選項

    選取下列任一選項:

    選取此選項時 AccEvent 會執行此工作
    使用 Invoke 使用 IDispatch::Invoke 來擷取物件屬性,而不是使用 IAccessible 方法。
    永遠取得物件 (即使未選取任何物件屬性) 即使 [對象屬性] 窗格中未選取任何專案,仍會擷取與事件相關聯的物件。
    顯示預設屬性(除了選取的屬性之外) 顯示與事件相關聯之對象的預設屬性,以及 [物件屬性] 窗格中選取的專案。
    顯示隱藏/隱藏視窗的事件資訊 顯示所有物件的 [事件資訊] 窗格中選取的專案,包括隱藏或隱藏視窗中的專案。
    顯示隱藏/隱藏視窗的完整事件資訊 顯示 [事件資訊] 窗格中的選取專案,以及 [物件屬性] 窗格中選取的專案,以及所有對象的選取專案,包括隱藏或隱藏視窗中的專案。
    下一個事件的 DebugBreak 導致產生下一個 WinEvent 的進程發生斷點例外狀況。 這會發出調試程式來處理例外狀況的訊號。

使用事件功能表

使用 [事件] 功能表來執行下列工作:

選取此選項時 AccEvent 會執行此工作
開始接聽 開始在 [數據] 檢視中顯示事件資訊。
停止接聽 停止在 [數據] 檢視中顯示事件資訊。
清除事件歷程記錄 清除 [數據] 檢視的內容。
選取所有事件 選取 [數據] 檢視中列出的所有事件。
複製選取的事件 將選取的事件複製到剪貼簿。

儲存使用中輔助功能事件

若要開始將事件儲存至文字檔,請開啟 [檔案] 選單,然後選取 [開始記錄至檔案] AccEvent 會開始將事件寫入指定的檔案,直到您從 [檔案] 功能選取 [停止記錄] 為止。 文本文件對於稍後的疑難解答和檢閱事件很有用。