Win32 API 日本語リファレンス
ホームMedia.Speech › ISpShortcut

ISpShortcut

COM
IID3df681e2-ea56-11d9-8bde-f66bad1e3f3a継承元IUnknown自前メソッド開始 vtbl3

メソッド 8

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT AddShortcut(LPWSTR pszDisplay, WORD LangID, LPWSTR pszSpoken, SPSHORTCUTTYPE shType)
pszDisplayLPWSTRinショートカットの表示文字列(展開後テキスト)。
LangIDWORDin対象言語を示す言語ID。
pszSpokenLPWSTRinショートカットを起動する発話語。
shTypeSPSHORTCUTTYPEinショートカットの種別を示すSPSHORTCUTTYPE列挙値。
vtbl 4 HRESULT RemoveShortcut(LPWSTR pszDisplay, WORD LangID, LPWSTR pszSpoken, SPSHORTCUTTYPE shType)
pszDisplayLPWSTRin削除対象の表示文字列。
LangIDWORDin対象言語を示す言語ID。
pszSpokenLPWSTRin削除対象の発話語。
shTypeSPSHORTCUTTYPEin削除対象のショートカット種別を示すSPSHORTCUTTYPE列挙値。
vtbl 5 HRESULT GetShortcuts(WORD LangID, SPSHORTCUTPAIRLIST* pShortcutpairList)
LangIDWORDin取得対象言語を示す言語ID。
pShortcutpairListSPSHORTCUTPAIRLIST*inout取得したショートカット対の一覧を受け取るSPSHORTCUTPAIRLIST構造体へのポインタ。
vtbl 6 HRESULT GetGeneration(DWORD* pdwGeneration)
pdwGenerationDWORD*outショートカット辞書の現在の世代番号を受け取るポインタ。
vtbl 7 HRESULT GetWordsFromGenerationChange(DWORD* pdwGeneration, SPWORDLIST* pWordList)
pdwGenerationDWORD*inout入力で基準世代、出力で最新世代を受け取るポインタ。
pWordListSPWORDLIST*inout指定世代以降に変更された語の一覧を受け取るSPWORDLIST構造体へのポインタ。
vtbl 8 HRESULT GetWords(DWORD* pdwGeneration, DWORD* pdwCookie, SPWORDLIST* pWordList)
pdwGenerationDWORD*inout現在の世代番号を受け取るポインタ。
pdwCookieDWORD*inout列挙継続用のクッキー値を入出力するポインタ。
pWordListSPWORDLIST*inout取得した語の一覧を受け取るSPWORDLIST構造体へのポインタ。
vtbl 9 HRESULT GetShortcutsForGeneration(DWORD* pdwGeneration, DWORD* pdwCookie, SPSHORTCUTPAIRLIST* pShortcutpairList)
pdwGenerationDWORD*inout現在の世代番号を受け取るポインタ。
pdwCookieDWORD*inout列挙継続用のクッキー値を入出力するポインタ。
pShortcutpairListSPSHORTCUTPAIRLIST*inout取得したショートカット対の一覧を受け取るSPSHORTCUTPAIRLIST構造体へのポインタ。
vtbl 10 HRESULT GetGenerationChange(DWORD* pdwGeneration, SPSHORTCUTPAIRLIST* pShortcutpairList)
pdwGenerationDWORD*inout入力で基準世代、出力で最新世代を受け取るポインタ。
pShortcutpairListSPSHORTCUTPAIRLIST*inout指定世代以降に変更されたショートカット対を受け取るSPSHORTCUTPAIRLIST構造体へのポインタ。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ISpShortcut "{3DF681E2-EA56-11D9-8BDE-F66BAD1E3F3A}"
#usecom global ISpShortcut IID_ISpShortcut "{0D722F1A-9FCF-4E62-96D8-6DF8F01A26AA}"
#comfunc global ISpShortcut_AddShortcut                   3 wstr,int,wstr,int
#comfunc global ISpShortcut_RemoveShortcut                4 wstr,int,wstr,int
#comfunc global ISpShortcut_GetShortcuts                  5 int,var
#comfunc global ISpShortcut_GetGeneration                 6 var
#comfunc global ISpShortcut_GetWordsFromGenerationChange  7 var,var
#comfunc global ISpShortcut_GetWords                      8 var,var,var
#comfunc global ISpShortcut_GetShortcutsForGeneration     9 var,var,var
#comfunc global ISpShortcut_GetGenerationChange           10 var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。