Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
4/8/2010

This method provides data to the parser by pushing the specified data as a raw buffer containing bytes.

Syntax

HRESULT PushData( 
  const char * 
pData,
  ULONG 
ulChars,
  BOOL 
fLastBuffer
);

Parameters

pData

[in] Pointer to the data to be pushed.

ulChars

[in] Size, in characters, of the data pointed to by pData.

fLastBuffer

[in] Indicates whether the current buffer is the last buffer.

Return Value

This function returns S_OK if the function is successful, otherwise an error code is returned.

Remarks

The lowest level way to provide input is as a raw buffer of bytes. The buffer is not NULL terminated. Call the IXMLParser::PushDatamethod with each buffer. IXMLParser::Runwill continue to return E_PENDING until IXMLParser::PushDatais called with the fLastBufferargument set to TRUE. An XML token can span multiple buffers.

For example, the first buffer might end with "<!— sample", in which case the parser will return E_PENDING; if the next buffer starts with "bar — ->", the parser will complete the token and call the IXMLNodeFactoryinterface with the combined COMMENT text "<! — -sampletag — ->".

When IXMLParser::PushDatais called with fLastBufferset to TRUE, the pushing of data should not continue unless the parser is reset first (the parser behavior is undefined otherwise).

Requirements

Header xmlparser.h
Windows Mobile Pocket PC 2000 and later, Smartphone 2002 and later

See Also