ホーム › Data.Xml.MsXml › ISAXAttributes
ISAXAttributes
COMメソッド 13
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
| pnLength | INT* | out | 属性の総数を受け取る出力。 |
| nIndex | INT | in | 対象属性の0始まりインデックス。 |
| ppwchUri | WORD** | out | 指定属性の名前空間URIを受け取るワイド文字列ポインタ。 |
| pcchUri | INT* | out | URI文字列の文字数を受け取る出力。 |
| nIndex | INT | in | 対象属性の0始まりインデックス。 |
| ppwchLocalName | WORD** | out | 指定属性のローカル名を受け取るワイド文字列ポインタ。 |
| pcchLocalName | INT* | out | ローカル名の文字数を受け取る出力。 |
| nIndex | INT | in | 対象属性の0始まりインデックス。 |
| ppwchQName | WORD** | out | 指定属性の修飾名を受け取るワイド文字列ポインタ。 |
| pcchQName | INT* | out | 修飾名の文字数を受け取る出力。 |
vtbl 7 HRESULT getName(INT nIndex, WORD** ppwchUri, INT* pcchUri, WORD** ppwchLocalName, INT* pcchLocalName, WORD** ppwchQName, INT* pcchQName)
| nIndex | INT | in | 対象属性の0始まりインデックス。 |
| ppwchUri | WORD** | out | 指定属性の名前空間URIを受け取るワイド文字列ポインタ。 |
| pcchUri | INT* | out | URI文字列の文字数を受け取る出力。 |
| ppwchLocalName | WORD** | out | 指定属性のローカル名を受け取るワイド文字列ポインタ。 |
| pcchLocalName | INT* | out | ローカル名の文字数を受け取る出力。 |
| ppwchQName | WORD** | out | 指定属性の修飾名を受け取るワイド文字列ポインタ。 |
| pcchQName | INT* | out | 修飾名の文字数を受け取る出力。 |
vtbl 8 HRESULT getIndexFromName(LPWSTR pwchUri, INT cchUri, LPWSTR pwchLocalName, INT cchLocalName, INT* pnIndex)
| pwchUri | LPWSTR | in | 検索対象属性の名前空間URI文字列。 |
| cchUri | INT | in | URI文字列の文字数。 |
| pwchLocalName | LPWSTR | in | 検索対象属性のローカル名文字列。 |
| cchLocalName | INT | in | ローカル名の文字数。 |
| pnIndex | INT* | out | 見つかった属性のインデックスを受け取る出力。 |
| pwchQName | LPWSTR | in | 検索対象属性の修飾名文字列。 |
| cchQName | INT | in | 修飾名の文字数。 |
| pnIndex | INT* | out | 見つかった属性のインデックスを受け取る出力。 |
| nIndex | INT | in | 対象属性の0始まりインデックス。 |
| ppwchType | WORD** | out | 指定属性の型(CDATA,ID等)を受け取るワイド文字列ポインタ。 |
| pcchType | INT* | out | 型文字列の文字数を受け取る出力。 |
vtbl 11 HRESULT getTypeFromName(LPWSTR pwchUri, INT cchUri, LPWSTR pwchLocalName, INT cchLocalName, WORD** ppwchType, INT* pcchType)
| pwchUri | LPWSTR | in | 対象属性の名前空間URI文字列。 |
| cchUri | INT | in | URI文字列の文字数。 |
| pwchLocalName | LPWSTR | in | 対象属性のローカル名文字列。 |
| cchLocalName | INT | in | ローカル名の文字数。 |
| ppwchType | WORD** | out | 指定属性の型を受け取るワイド文字列ポインタ。 |
| pcchType | INT* | out | 型文字列の文字数を受け取る出力。 |
| pwchQName | LPWSTR | in | 対象属性の修飾名文字列。 |
| cchQName | INT | in | 修飾名の文字数。 |
| ppwchType | WORD** | out | 指定属性の型を受け取るワイド文字列ポインタ。 |
| pcchType | INT* | out | 型文字列の文字数を受け取る出力。 |
| nIndex | INT | in | 対象属性の0始まりインデックス。 |
| ppwchValue | WORD** | out | 指定属性の値を受け取るワイド文字列ポインタ。 |
| pcchValue | INT* | out | 値文字列の文字数を受け取る出力。 |
vtbl 14 HRESULT getValueFromName(LPWSTR pwchUri, INT cchUri, LPWSTR pwchLocalName, INT cchLocalName, WORD** ppwchValue, INT* pcchValue)
| pwchUri | LPWSTR | in | 対象属性の名前空間URI文字列。 |
| cchUri | INT | in | URI文字列の文字数。 |
| pwchLocalName | LPWSTR | in | 対象属性のローカル名文字列。 |
| cchLocalName | INT | in | ローカル名の文字数。 |
| ppwchValue | WORD** | out | 指定属性の値を受け取るワイド文字列ポインタ。 |
| pcchValue | INT* | out | 値文字列の文字数を受け取る出力。 |
vtbl 15 HRESULT getValueFromQName(LPWSTR pwchQName, INT cchQName, WORD** ppwchValue, INT* pcchValue)
| pwchQName | LPWSTR | in | 対象属性の修飾名文字列。 |
| cchQName | INT | in | 修飾名の文字数。 |
| ppwchValue | WORD** | out | 指定属性の値を受け取るワイド文字列ポインタ。 |
| pcchValue | INT* | 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 方式にも切替可。#define global IID_ISAXAttributes "{F078ABE1-45D2-4832-91EA-4466CE2F25C9}" #usecom global ISAXAttributes IID_ISAXAttributes "{4DD441AD-526D-4A77-9F1B-9841ED802FB0}" #comfunc global ISAXAttributes_getLength 3 sptr #comfunc global ISAXAttributes_getURI 4 int,sptr,sptr #comfunc global ISAXAttributes_getLocalName 5 int,sptr,sptr #comfunc global ISAXAttributes_getQName 6 int,sptr,sptr #comfunc global ISAXAttributes_getName 7 int,sptr,sptr,sptr,sptr,sptr,sptr #comfunc global ISAXAttributes_getIndexFromName 8 wstr,int,wstr,int,sptr #comfunc global ISAXAttributes_getIndexFromQName 9 wstr,int,sptr #comfunc global ISAXAttributes_getType 10 int,sptr,sptr #comfunc global ISAXAttributes_getTypeFromName 11 wstr,int,wstr,int,sptr,sptr #comfunc global ISAXAttributes_getTypeFromQName 12 wstr,int,sptr,sptr #comfunc global ISAXAttributes_getValue 13 int,sptr,sptr #comfunc global ISAXAttributes_getValueFromName 14 wstr,int,wstr,int,sptr,sptr #comfunc global ISAXAttributes_getValueFromQName 15 wstr,int,sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。