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

ISAXAttributes

COM
IIDf078abe1-45d2-4832-91ea-4466ce2f25c9継承元IUnknown自前メソッド開始 vtbl3

メソッド 13

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

vtbl 3 HRESULT getLength(INT* pnLength)
pnLengthINT*out属性の総数を受け取る出力。
vtbl 4 HRESULT getURI(INT nIndex, WORD** ppwchUri, INT* pcchUri)
nIndexINTin対象属性の0始まりインデックス。
ppwchUriWORD**out指定属性の名前空間URIを受け取るワイド文字列ポインタ。
pcchUriINT*outURI文字列の文字数を受け取る出力。
vtbl 5 HRESULT getLocalName(INT nIndex, WORD** ppwchLocalName, INT* pcchLocalName)
nIndexINTin対象属性の0始まりインデックス。
ppwchLocalNameWORD**out指定属性のローカル名を受け取るワイド文字列ポインタ。
pcchLocalNameINT*outローカル名の文字数を受け取る出力。
vtbl 6 HRESULT getQName(INT nIndex, WORD** ppwchQName, INT* pcchQName)
nIndexINTin対象属性の0始まりインデックス。
ppwchQNameWORD**out指定属性の修飾名を受け取るワイド文字列ポインタ。
pcchQNameINT*out修飾名の文字数を受け取る出力。
vtbl 7 HRESULT getName(INT nIndex, WORD** ppwchUri, INT* pcchUri, WORD** ppwchLocalName, INT* pcchLocalName, WORD** ppwchQName, INT* pcchQName)
nIndexINTin対象属性の0始まりインデックス。
ppwchUriWORD**out指定属性の名前空間URIを受け取るワイド文字列ポインタ。
pcchUriINT*outURI文字列の文字数を受け取る出力。
ppwchLocalNameWORD**out指定属性のローカル名を受け取るワイド文字列ポインタ。
pcchLocalNameINT*outローカル名の文字数を受け取る出力。
ppwchQNameWORD**out指定属性の修飾名を受け取るワイド文字列ポインタ。
pcchQNameINT*out修飾名の文字数を受け取る出力。
vtbl 8 HRESULT getIndexFromName(LPWSTR pwchUri, INT cchUri, LPWSTR pwchLocalName, INT cchLocalName, INT* pnIndex)
pwchUriLPWSTRin検索対象属性の名前空間URI文字列。
cchUriINTinURI文字列の文字数。
pwchLocalNameLPWSTRin検索対象属性のローカル名文字列。
cchLocalNameINTinローカル名の文字数。
pnIndexINT*out見つかった属性のインデックスを受け取る出力。
vtbl 9 HRESULT getIndexFromQName(LPWSTR pwchQName, INT cchQName, INT* pnIndex)
pwchQNameLPWSTRin検索対象属性の修飾名文字列。
cchQNameINTin修飾名の文字数。
pnIndexINT*out見つかった属性のインデックスを受け取る出力。
vtbl 10 HRESULT getType(INT nIndex, WORD** ppwchType, INT* pcchType)
nIndexINTin対象属性の0始まりインデックス。
ppwchTypeWORD**out指定属性の型(CDATA,ID等)を受け取るワイド文字列ポインタ。
pcchTypeINT*out型文字列の文字数を受け取る出力。
vtbl 11 HRESULT getTypeFromName(LPWSTR pwchUri, INT cchUri, LPWSTR pwchLocalName, INT cchLocalName, WORD** ppwchType, INT* pcchType)
pwchUriLPWSTRin対象属性の名前空間URI文字列。
cchUriINTinURI文字列の文字数。
pwchLocalNameLPWSTRin対象属性のローカル名文字列。
cchLocalNameINTinローカル名の文字数。
ppwchTypeWORD**out指定属性の型を受け取るワイド文字列ポインタ。
pcchTypeINT*out型文字列の文字数を受け取る出力。
vtbl 12 HRESULT getTypeFromQName(LPWSTR pwchQName, INT cchQName, WORD** ppwchType, INT* pcchType)
pwchQNameLPWSTRin対象属性の修飾名文字列。
cchQNameINTin修飾名の文字数。
ppwchTypeWORD**out指定属性の型を受け取るワイド文字列ポインタ。
pcchTypeINT*out型文字列の文字数を受け取る出力。
vtbl 13 HRESULT getValue(INT nIndex, WORD** ppwchValue, INT* pcchValue)
nIndexINTin対象属性の0始まりインデックス。
ppwchValueWORD**out指定属性の値を受け取るワイド文字列ポインタ。
pcchValueINT*out値文字列の文字数を受け取る出力。
vtbl 14 HRESULT getValueFromName(LPWSTR pwchUri, INT cchUri, LPWSTR pwchLocalName, INT cchLocalName, WORD** ppwchValue, INT* pcchValue)
pwchUriLPWSTRin対象属性の名前空間URI文字列。
cchUriINTinURI文字列の文字数。
pwchLocalNameLPWSTRin対象属性のローカル名文字列。
cchLocalNameINTinローカル名の文字数。
ppwchValueWORD**out指定属性の値を受け取るワイド文字列ポインタ。
pcchValueINT*out値文字列の文字数を受け取る出力。
vtbl 15 HRESULT getValueFromQName(LPWSTR pwchQName, INT cchQName, WORD** ppwchValue, INT* pcchValue)
pwchQNameLPWSTRin対象属性の修飾名文字列。
cchQNameINTin修飾名の文字数。
ppwchValueWORD**out指定属性の値を受け取るワイド文字列ポインタ。
pcchValueINT*out値文字列の文字数を受け取る出力。

HSP用 COM定義

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

出力引数:
#define global IID_ISAXAttributes "{F078ABE1-45D2-4832-91EA-4466CE2F25C9}"
#usecom global ISAXAttributes IID_ISAXAttributes "{4DD441AD-526D-4A77-9F1B-9841ED802FB0}"
#comfunc global ISAXAttributes_getLength          3 var
#comfunc global ISAXAttributes_getURI             4 int,var,var
#comfunc global ISAXAttributes_getLocalName       5 int,var,var
#comfunc global ISAXAttributes_getQName           6 int,var,var
#comfunc global ISAXAttributes_getName            7 int,var,var,var,var,var,var
#comfunc global ISAXAttributes_getIndexFromName   8 wstr,int,wstr,int,var
#comfunc global ISAXAttributes_getIndexFromQName  9 wstr,int,var
#comfunc global ISAXAttributes_getType            10 int,var,var
#comfunc global ISAXAttributes_getTypeFromName    11 wstr,int,wstr,int,var,var
#comfunc global ISAXAttributes_getTypeFromQName   12 wstr,int,var,var
#comfunc global ISAXAttributes_getValue           13 int,var,var
#comfunc global ISAXAttributes_getValueFromName   14 wstr,int,wstr,int,var,var
#comfunc global ISAXAttributes_getValueFromQName  15 wstr,int,var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。