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

ISAXDeclHandler

COM
IID862629ac-771a-47b2-8337-4e6843c1be90継承元IUnknown自前メソッド開始 vtbl3

メソッド 4

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

vtbl 3 HRESULT elementDecl(LPWSTR pwchName, INT cchName, LPWSTR pwchModel, INT cchModel)
pwchNameLPWSTRin宣言された要素の名前文字列。
cchNameINTin要素名の文字数。
pwchModelLPWSTRin要素の内容モデル(子要素の規則)文字列。
cchModelINTin内容モデル文字列の文字数。
vtbl 4 HRESULT attributeDecl(LPWSTR pwchElementName, INT cchElementName, LPWSTR pwchAttributeName, INT cchAttributeName, LPWSTR pwchType, INT cchType, LPWSTR pwchValueDefault, INT cchValueDefault, LPWSTR pwchValue, INT cchValue)
pwchElementNameLPWSTRin属性が属する要素の名前文字列。
cchElementNameINTin要素名の文字数。
pwchAttributeNameLPWSTRin宣言された属性の名前文字列。
cchAttributeNameINTin属性名の文字数。
pwchTypeLPWSTRin属性の型(CDATA,ID等)文字列。
cchTypeINTin型文字列の文字数。
pwchValueDefaultLPWSTRin既定値の種別(#REQUIRED,#IMPLIED等)文字列。NULL可。
cchValueDefaultINTin既定値種別文字列の文字数。
pwchValueLPWSTRin属性の既定値文字列。
cchValueINTin既定値文字列の文字数。
vtbl 5 HRESULT internalEntityDecl(LPWSTR pwchName, INT cchName, LPWSTR pwchValue, INT cchValue)
pwchNameLPWSTRin内部エンティティの名前文字列。
cchNameINTinエンティティ名の文字数。
pwchValueLPWSTRin内部エンティティの置換値文字列。
cchValueINTin置換値文字列の文字数。
vtbl 6 HRESULT externalEntityDecl(LPWSTR pwchName, INT cchName, LPWSTR pwchPublicId, INT cchPublicId, LPWSTR pwchSystemId, INT cchSystemId)
pwchNameLPWSTRin外部エンティティの名前文字列。
cchNameINTinエンティティ名の文字数。
pwchPublicIdLPWSTRin外部エンティティの公開識別子文字列。NULL可。
cchPublicIdINTin公開識別子の文字数。
pwchSystemIdLPWSTRin外部エンティティのシステム識別子文字列。
cchSystemIdINTinシステム識別子の文字数。

HSP用 COM定義

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

#define global IID_ISAXDeclHandler "{862629AC-771A-47B2-8337-4E6843C1BE90}"
#usecom global ISAXDeclHandler IID_ISAXDeclHandler "{}"
#comfunc global ISAXDeclHandler_elementDecl         3 wstr,int,wstr,int
#comfunc global ISAXDeclHandler_attributeDecl       4 wstr,int,wstr,int,wstr,int,wstr,int,wstr,int
#comfunc global ISAXDeclHandler_internalEntityDecl  5 wstr,int,wstr,int
#comfunc global ISAXDeclHandler_externalEntityDecl  6 wstr,int,wstr,int,wstr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。