共用方式為


語音輸入事件

[Microsoft代理程式從 Windows 7 開始已被取代,而且可能無法在後續版本的 Windows 中使用。]

此外,在 命令 事件通知中,Agent 也會在伺服器開啟或關閉接聽模式時,使用 ListenStartListenComplete 事件(IAgentNotifySinkEx::ListeningState) 通知輸入使用中用戶端。 不過,如果使用者按下接聽模式索引鍵,且輸入-主動用戶端最上層的字元沒有相符的語音辨識引擎,伺服器就會啟動接聽熱鍵模式逾時,但不會為字元的作用中用戶端產生 ListenStart 事件。 如果在逾時完成之前,用戶會啟動另一個具有語音辨識引擎支援的字元,伺服器會嘗試啟動語音輸入,併產生 ListenStart 事件。

同樣地,如果客戶端嘗試使用 Listen 方法來開啟接聽模式,而且沒有相符的語音辨識引擎可用,則呼叫會失敗,而且伺服器不會產生 ListenStart事件。 在 Microsoft Agent 控件中,Listen 方法會傳回 false ,但呼叫不會引發錯誤。

當接聽密鑰模式開啟且使用者切換至使用不同語音辨識引擎的字元時,伺服器會切換至並啟動該引擎,並觸發 ListenComplete,然後 ListenStart 事件。 如果啟動的字元沒有可用的語音辨識引擎(因為未安裝,或沒有符合啟動字元的語言標識元設定),伺服器將會針對先前啟動的字元觸發 ListenComplete 事件,並傳回 原因 參數中的值。 不過,伺服器不會產生 ListenStartListenComplete 事件給沒有語音辨識支援的用戶端。

如果用戶端成功呼叫 Listen 方法,且沒有語音辨識引擎支援的字元會在接聽模式逾時完成之前變成輸入作用中,然後使用者切換回原始用戶端的字元,伺服器就會為該用戶端產生 ListenStart 事件。

如果輸入作用中用戶端在接聽模式中變更 SRModeID 切換語音辨識引擎,則伺服器會切換並啟動該引擎,而不需重新觸發 ListenStart 事件。 不過,如果指定的引擎無法使用,則呼叫會失敗(在控件中引發錯誤),而且伺服器也會呼叫 ListenComplete 事件。