Win32 API 日本語リファレンス
ホームData.Xml.MsXml › ISAXContentHandler

ISAXContentHandler

COM
IID1545cdfa-9e4e-4497-a8a4-2bf7d0112c44継承元IUnknown自前メソッド開始 vtbl3

メソッド 11

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

vtbl 3 HRESULT putDocumentLocator(ISAXLocator* pLocator)
pLocatorISAXLocator*in解析位置情報を提供するロケータ(ISAXLocator)。
vtbl 4 HRESULT startDocument()
vtbl 5 HRESULT endDocument()
vtbl 6 HRESULT startPrefixMapping(LPWSTR pwchPrefix, INT cchPrefix, LPWSTR pwchUri, INT cchUri)
pwchPrefixLPWSTRin名前空間接頭辞の文字列。
cchPrefixINTin接頭辞文字列の文字数。
pwchUriLPWSTRin接頭辞に対応する名前空間URIの文字列。
cchUriINTinURI文字列の文字数。
vtbl 7 HRESULT endPrefixMapping(LPWSTR pwchPrefix, INT cchPrefix)
pwchPrefixLPWSTRinスコープを終了する名前空間接頭辞の文字列。
cchPrefixINTin接頭辞文字列の文字数。
vtbl 8 HRESULT startElement(LPWSTR pwchNamespaceUri, INT cchNamespaceUri, LPWSTR pwchLocalName, INT cchLocalName, LPWSTR pwchQName, INT cchQName, ISAXAttributes* pAttributes)
pwchNamespaceUriLPWSTRin要素の名前空間URI文字列。
cchNamespaceUriINTin名前空間URIの文字数。
pwchLocalNameLPWSTRin要素のローカル名文字列。
cchLocalNameINTinローカル名の文字数。
pwchQNameLPWSTRin要素の修飾名(接頭辞付き)文字列。
cchQNameINTin修飾名の文字数。
pAttributesISAXAttributes*inこの要素の属性集合を表すISAXAttributes。
vtbl 9 HRESULT endElement(LPWSTR pwchNamespaceUri, INT cchNamespaceUri, LPWSTR pwchLocalName, INT cchLocalName, LPWSTR pwchQName, INT cchQName)
pwchNamespaceUriLPWSTRin要素の名前空間URI文字列。
cchNamespaceUriINTin名前空間URIの文字数。
pwchLocalNameLPWSTRin要素のローカル名文字列。
cchLocalNameINTinローカル名の文字数。
pwchQNameLPWSTRin要素の修飾名(接頭辞付き)文字列。
cchQNameINTin修飾名の文字数。
vtbl 10 HRESULT characters(LPWSTR pwchChars, INT cchChars)
pwchCharsLPWSTRin文字データ(テキスト内容)の文字列。
cchCharsINTin文字データの文字数。
vtbl 11 HRESULT ignorableWhitespace(LPWSTR pwchChars, INT cchChars)
pwchCharsLPWSTRin無視可能な空白文字データの文字列。
cchCharsINTin空白文字データの文字数。
vtbl 12 HRESULT processingInstruction(LPWSTR pwchTarget, INT cchTarget, LPWSTR pwchData, INT cchData)
pwchTargetLPWSTRin処理命令のターゲット名文字列。
cchTargetINTinターゲット名の文字数。
pwchDataLPWSTRin処理命令のデータ部文字列。
cchDataINTinデータ部の文字数。
vtbl 13 HRESULT skippedEntity(LPWSTR pwchName, INT cchName)
pwchNameLPWSTRinスキップされたエンティティの名前文字列。
cchNameINTinエンティティ名の文字数。

HSP用 COM定義

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

#define global IID_ISAXContentHandler "{1545CDFA-9E4E-4497-A8A4-2BF7D0112C44}"
#usecom global ISAXContentHandler IID_ISAXContentHandler "{}"
#comfunc global ISAXContentHandler_putDocumentLocator     3 sptr
#comfunc global ISAXContentHandler_startDocument          4
#comfunc global ISAXContentHandler_endDocument            5
#comfunc global ISAXContentHandler_startPrefixMapping     6 wstr,int,wstr,int
#comfunc global ISAXContentHandler_endPrefixMapping       7 wstr,int
#comfunc global ISAXContentHandler_startElement           8 wstr,int,wstr,int,wstr,int,sptr
#comfunc global ISAXContentHandler_endElement             9 wstr,int,wstr,int,wstr,int
#comfunc global ISAXContentHandler_characters             10 wstr,int
#comfunc global ISAXContentHandler_ignorableWhitespace    11 wstr,int
#comfunc global ISAXContentHandler_processingInstruction  12 wstr,int,wstr,int
#comfunc global ISAXContentHandler_skippedEntity          13 wstr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。