[Microsoft代理程式從 Windows 7 開始已被取代,而且可能無法在後續版本的 Windows 中使用。]
HRESULT Prepare(
long dwType, // type of animation data to load
BSTR bszName, // name of the animation
long bQueue, // queue the request
long * pdwReqID // address of request ID
);
擷取字元的動畫數據。
- 傳回S_OK,表示作業成功。 當函式傳回時, pdwReqID 會包含要求的標識碼。
-
dwType
-
值,表示要載入的動畫數據類型,必須是下列其中一項:
值 Description const unsigned shortPREPARE_ANIMATION = 0; 字元的動畫數據。 const unsigned shortPREPARE_STATE = 1; 字元的狀態數據。 const unsigned shortPREPARE_WAVE = 2 字元的聲音檔 (。WAV 或 。LWV) 用於口語輸出。 -
bszName
-
動畫或狀態的名稱。
動畫名稱是以使用 Microsoft Agent 字元編輯器儲存時為字元定義的動畫名稱為基礎。
針對狀態,此值可以是下列其中一項:
Description “Gesturing” 擷取所有 Gesturing 狀態動畫。 “GesturingDown” 擷取 GesturingDown 動畫。 “GesturingLeft” 擷取 GesturingLeft 動畫。 “GesturingRight” 擷取 GesturingRight 動畫。 “GesturingUp” 擷取 GesturingUp 動畫。 “隱藏” 擷取 隱藏 狀態動畫。 “聽力” 擷取 聽力 狀態動畫。 “Idling” 擷取所有 Idling 狀態動畫。 “IdlingLevel1” 擷取所有 IdlingLevel1 動畫。 “IdlingLevel2” 擷取所有 IdlingLevel2 動畫。 “IdlingLevel3” 擷取所有 IdlingLevel3 動畫。 “Listening” 擷取 接 聽狀態動畫。 “移動” 擷取所有 移動 狀態動畫。 “MovingDown” 擷取所有 移動 動畫。 “MovingLeft” 若要擷取所有 MovingLeft 動畫。 “MovingRight” 擷取所有 MovingRight 動畫。 “MovingUp” 擷取所有 MovingUp 動畫。 “顯示” 擷取 顯示 狀態動畫。 “說話” 擷取 說話 狀態動畫。 為。WAV 檔案,將 bszName 設定為 的 URL 或檔案規格。WAV 檔案。 如果規格不完整,則會將它解譯為相對於Load方法中使用的規格。
-
bQueue
-
布爾值,指定伺服器是否將準備要求排入佇列。 True 是表示 會將要求排入佇列,並導致之後的任何動畫要求等到載入它指定的動畫數據為止。 False 會以異步方式擷取動畫數據。
-
pdwReqID
-
接收準備要求標識碼的變數位址。
如果您使用 HTTP 通訊協定載入字元 (。ACF 檔案),您必須使用 Prepare 方法來擷取動畫數據,才能播放動畫。 如果您使用 UNC 通訊協定載入字元,則無法使用此方法 (。ACS 檔案)。 如果您已使用 UNC 通訊協定載入該字元,則也無法使用 Prepare 來擷取字元的 HTTP 資料。ACS 字元檔案)。
使用 Prepare 方法擷取的動畫或音效數據會儲存在瀏覽器的快取中。 後續呼叫會檢查快取,如果動畫數據已經存在,控件會直接從快取載入數據。 載入之後,就可以使用 Play 或 Speak 方法播放動畫或音效數據。
您可以使用逗號分隔多個動畫和狀態。 不過,您無法在相同的 Prepare 語句中混合類型。