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

ISpXMLRecoResult

COM
IIDae39362b-45a8-4074-9b9e-ccf49aa2d0b6継承元ISpRecoResult自前メソッド開始 vtbl14

メソッド 2

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

vtbl 14 HRESULT GetXMLResult(LPWSTR* ppszCoMemXMLResult, SPXMLRESULTOPTIONS Options)
ppszCoMemXMLResultLPWSTR*out認識結果のXML(SML)文字列を受け取るポインタ。CoTaskMemFreeで解放する。
OptionsSPXMLRESULTOPTIONSin出力内容を指定するSPXMLRESULTOPTIONS列挙値。
vtbl 15 HRESULT GetXMLErrorInfo(SPSEMANTICERRORINFO* pSemanticErrorInfo)
pSemanticErrorInfoSPSEMANTICERRORINFO*inout意味解釈エラー情報を受け取るSPSEMANTICERRORINFO構造体へのポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_ISpXMLRecoResult "{AE39362B-45A8-4074-9B9E-CCF49AA2D0B6}"
#usecom global ISpXMLRecoResult IID_ISpXMLRecoResult "{}"
#comfunc global ISpXMLRecoResult_GetXMLResult     14 var,int
#comfunc global ISpXMLRecoResult_GetXMLErrorInfo  15 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。