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

IXmlWriter

COM
IID7279fc88-709d-4095-b63d-69fe4b0d9030継承元IUnknown自前メソッド開始 vtbl3

メソッド 29

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

vtbl 3 HRESULT SetOutput(IUnknown* pOutput)
pOutputIUnknown*inoptional書き込み先のIStreamまたはIXmlWriterOutputを指定する。
vtbl 4 HRESULT GetProperty(DWORD nProperty, INT_PTR* ppValue)
nPropertyDWORDin取得するプロパティを示すXmlWriterProperty列挙値。
ppValueINT_PTR*outプロパティの現在値を受け取る出力先(INT_PTR)。
vtbl 5 HRESULT SetProperty(DWORD nProperty, INT_PTR pValue)
nPropertyDWORDin設定するプロパティを示すXmlWriterProperty列挙値。
pValueINT_PTRinoptionalプロパティに設定する値(INT_PTR)。
vtbl 6 HRESULT WriteAttributes(IXmlReader* pReader, BOOL fWriteDefaultAttributes)
pReaderIXmlReader*in属性のコピー元となるIXmlReader。現在位置の属性群を書き出す。
fWriteDefaultAttributesBOOLinDTD/スキーマ由来の既定属性も書き出すかを示すBOOL。
vtbl 7 HRESULT WriteAttributeString(LPWSTR pwszPrefix, LPWSTR pwszLocalName, LPWSTR pwszNamespaceUri, LPWSTR pwszValue)
pwszPrefixLPWSTRinoptional属性の名前空間接頭辞。NULL可。
pwszLocalNameLPWSTRinoptional属性のローカル名。
pwszNamespaceUriLPWSTRinoptional属性の名前空間URI。NULL可。
pwszValueLPWSTRinoptional属性の値。
vtbl 8 HRESULT WriteCData(LPWSTR pwszText)
pwszTextLPWSTRinoptionalCDATAセクション(<![CDATA[ ]]>)として書き出すテキスト。
vtbl 9 HRESULT WriteCharEntity(WCHAR wch)
wchWCHARin文字実体参照(&#xNNNN;)として書き出すUnicode文字。
vtbl 10 HRESULT WriteChars(LPWSTR pwch, DWORD cwch)
pwchLPWSTRinoptional書き出す文字データのバッファ。
cwchDWORDinバッファから書き出す文字数。
vtbl 11 HRESULT WriteComment(LPWSTR pwszComment)
pwszCommentLPWSTRinoptionalXMLコメント(<!-- -->)として書き出すテキスト。
vtbl 12 HRESULT WriteDocType(LPWSTR pwszName, LPWSTR pwszPublicId, LPWSTR pwszSystemId, LPWSTR pwszSubset)
pwszNameLPWSTRinoptionalDOCTYPE宣言の文書型名。
pwszPublicIdLPWSTRinoptional外部DTDの公開識別子(public ID)。NULL可。
pwszSystemIdLPWSTRinoptional外部DTDのシステム識別子(URI)。NULL可。
pwszSubsetLPWSTRinoptional内部DTDサブセットの内容。NULL可。
vtbl 13 HRESULT WriteElementString(LPWSTR pwszPrefix, LPWSTR pwszLocalName, LPWSTR pwszNamespaceUri, LPWSTR pwszValue)
pwszPrefixLPWSTRinoptional要素の名前空間接頭辞。NULL可。
pwszLocalNameLPWSTRin要素のローカル名。
pwszNamespaceUriLPWSTRinoptional要素の名前空間URI。NULL可。
pwszValueLPWSTRinoptional要素のテキスト内容。NULLなら空要素を出力する。
vtbl 14 HRESULT WriteEndDocument()
vtbl 15 HRESULT WriteEndElement()
vtbl 16 HRESULT WriteEntityRef(LPWSTR pwszName)
pwszNameLPWSTRin実体参照(&name;)として書き出す実体名。
vtbl 17 HRESULT WriteFullEndElement()
vtbl 18 HRESULT WriteName(LPWSTR pwszName)
pwszNameLPWSTRinXMLの名前(Name生成規則に従う妥当な名前)として書き出す文字列。
vtbl 19 HRESULT WriteNmToken(LPWSTR pwszNmToken)
pwszNmTokenLPWSTRinXMLのNMTOKEN(妥当なトークン)として書き出す文字列。
vtbl 20 HRESULT WriteNode(IXmlReader* pReader, BOOL fWriteDefaultAttributes)
pReaderIXmlReader*inコピー元のIXmlReader。現在ノードとその全サブツリーを書き出す。
fWriteDefaultAttributesBOOLin既定属性も書き出すかを示すBOOL。
vtbl 21 HRESULT WriteNodeShallow(IXmlReader* pReader, BOOL fWriteDefaultAttributes)
pReaderIXmlReader*inコピー元のIXmlReader。現在ノードのみを浅くコピーする。
fWriteDefaultAttributesBOOLin既定属性も書き出すかを示すBOOL。
vtbl 22 HRESULT WriteProcessingInstruction(LPWSTR pwszName, LPWSTR pwszText)
pwszNameLPWSTRin処理命令(<?name ...?>)のターゲット名。
pwszTextLPWSTRinoptional処理命令の内容テキスト。
vtbl 23 HRESULT WriteQualifiedName(LPWSTR pwszLocalName, LPWSTR pwszNamespaceUri)
pwszLocalNameLPWSTRin修飾名として書き出すローカル名。
pwszNamespaceUriLPWSTRinoptionalローカル名に対応する名前空間URI。NULL可。
vtbl 24 HRESULT WriteRaw(LPWSTR pwszData)
pwszDataLPWSTRinoptionalエスケープせずそのまま出力する生のXMLデータ。
vtbl 25 HRESULT WriteRawChars(LPWSTR pwch, DWORD cwch)
pwchLPWSTRinoptionalエスケープせず出力する生の文字データバッファ。
cwchDWORDinバッファから出力する文字数。
vtbl 26 HRESULT WriteStartDocument(XmlStandalone standalone)
standaloneXmlStandaloneinXML宣言のstandalone属性の扱いを示すXmlStandalone列挙値。
vtbl 27 HRESULT WriteStartElement(LPWSTR pwszPrefix, LPWSTR pwszLocalName, LPWSTR pwszNamespaceUri)
pwszPrefixLPWSTRinoptional開始要素の名前空間接頭辞。NULL可。
pwszLocalNameLPWSTRin開始要素のローカル名。
pwszNamespaceUriLPWSTRinoptional開始要素の名前空間URI。NULL可。
vtbl 28 HRESULT WriteString(LPWSTR pwszText)
pwszTextLPWSTRinoptional要素内容のテキスト。特殊文字は自動的にエスケープされる。
vtbl 29 HRESULT WriteSurrogateCharEntity(WCHAR wchLow, WCHAR wchHigh)
wchLowWCHARinサロゲートペアの下位(後続)コードユニット。
wchHighWCHARinサロゲートペアの上位(先行)コードユニット。
vtbl 30 HRESULT WriteWhitespace(LPWSTR pwszWhitespace)
pwszWhitespaceLPWSTRinoptional出力する空白文字(スペース・タブ・改行)からなる文字列。
vtbl 31 HRESULT Flush()

HSP用 COM定義

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

出力引数:
#define global IID_IXmlWriter "{7279FC88-709D-4095-B63D-69FE4B0D9030}"
#usecom global IXmlWriter IID_IXmlWriter "{}"
#comfunc global IXmlWriter_SetOutput                   3 sptr
#comfunc global IXmlWriter_GetProperty                 4 int,var
#comfunc global IXmlWriter_SetProperty                 5 int,sptr
#comfunc global IXmlWriter_WriteAttributes             6 sptr,int
#comfunc global IXmlWriter_WriteAttributeString        7 wstr,wstr,wstr,wstr
#comfunc global IXmlWriter_WriteCData                  8 wstr
#comfunc global IXmlWriter_WriteCharEntity             9 int
#comfunc global IXmlWriter_WriteChars                  10 wstr,int
#comfunc global IXmlWriter_WriteComment                11 wstr
#comfunc global IXmlWriter_WriteDocType                12 wstr,wstr,wstr,wstr
#comfunc global IXmlWriter_WriteElementString          13 wstr,wstr,wstr,wstr
#comfunc global IXmlWriter_WriteEndDocument            14
#comfunc global IXmlWriter_WriteEndElement             15
#comfunc global IXmlWriter_WriteEntityRef              16 wstr
#comfunc global IXmlWriter_WriteFullEndElement         17
#comfunc global IXmlWriter_WriteName                   18 wstr
#comfunc global IXmlWriter_WriteNmToken                19 wstr
#comfunc global IXmlWriter_WriteNode                   20 sptr,int
#comfunc global IXmlWriter_WriteNodeShallow            21 sptr,int
#comfunc global IXmlWriter_WriteProcessingInstruction  22 wstr,wstr
#comfunc global IXmlWriter_WriteQualifiedName          23 wstr,wstr
#comfunc global IXmlWriter_WriteRaw                    24 wstr
#comfunc global IXmlWriter_WriteRawChars               25 wstr,int
#comfunc global IXmlWriter_WriteStartDocument          26 int
#comfunc global IXmlWriter_WriteStartElement           27 wstr,wstr,wstr
#comfunc global IXmlWriter_WriteString                 28 wstr
#comfunc global IXmlWriter_WriteSurrogateCharEntity    29 int,int
#comfunc global IXmlWriter_WriteWhitespace             30 wstr
#comfunc global IXmlWriter_Flush                       31
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。