SAX2 Visual Basic Common Notices
This topic provides comparison and contrast of language-specific changes that are common across all SAX interfaces when working in either Microsoft® Visual Basic®.
Visual Basic Wrappers
Visual Basic wrappers are constructed from C++/COM interfaces by:
Replacing the "I" prefix in front of the interface/class name with "IVB".
Replacing all string representations from w_char_t*/int to BSTR. For handlers, strings should be passed by reference.
Replacing IerrorInfo parameters with BSTRs containing error messages.
Replacing HRESULT parameters with long.
Making all parameter names follow simplified Hungarian notation for Visual Basic. For example, strName is used in place of pwchName. Prefixes are "srt", "n", "l", and "o".
Wherever C++ uses NULL, Visual Basic uses VT_Empty.
All interfaces are derived from
IDispatch
.
Currently, Visual Basic and C++ wrappers are completely disconnected for the user. However, the same coclasses implement both C++ and VB interfaces.
Features
Features handled and recognized by SAXXMLReader are:
"exhaustive-errors"
"http://xml.org/sax/features/external-general-entities"
"http://xml.org/sax/features/external-parameter-entities"
"http://xml.org/sax/features/lexical-handler/parameter-entities"
"http://xml.org/sax/features/namespaces"
"http://xml.org/sax/features/namespace-prefixes"
"preserve-system-identifiers"
"schema-validation"
"server-http-request"
Properties
Properties handled and recognized by SAXXMLReader are:
"http://xml.org/sax/properties/lexical-handler"
"http://xml.org/sax/properties/declaration-handler"
"http://xml.org/sax/properties/dom-node"
"schemas"
"schema-declaration-handler"
"charset"
"xmldecl-encoding"
"xmldecl-version"
"xmldecl-standalone"
Base interface
All interfaces are derived from IDispatch
.