网络编程
位置:首页>> 网络编程>> JavaScript>> 从 msxml6.dll 中获取 DOMDocument 对象的方法与属性

从 msxml6.dll 中获取 DOMDocument 对象的方法与属性

作者:快乐笛子 来源:快乐笛子的博客 发布时间:2009-02-22 18:46:00 

标签:XMLHTTP,dom,xml,对象

一直以来都对DOMDocument与 XMLHTTP 两者的区别不甚了解,今天用 eXeScope 查看了msxml6.dll 内部的 typelib,结果有意外的收获。

以下为 XMLHTTP.6.0 与 DOMDocument.6.0 的公用方法与属性:

Class XMLHTTP60; // XML HTTP Request class 6.0
GUID={88D96A0A-F192-11D4-A65F-0040963251E5};
function QueryInterface(riid:^GUID; out ppvObj:^^void);
function AddRef: UI4;
function Release: UI4;
function GetTypeInfoCount(out pctinfo:^UINT);
function GetTypeInfo(itinfo:UINT; lcid:UI4; out pptinfo:^^void);
function GetIDsOfNames(riid:^GUID; rgszNames:^^I1; cNames:UINT; lcid:UI4; out rgdispid:^I4);
function Invoke(dispidMember:I4; riid:^GUID; lcid:UI4; wFlags:UI2; pdispparams:^DISPPARAMS; out pvarResult:^variant; out pexcepinfo:^EXCEPINFO; out puArgErr:^UINT);
function open(bstrMethod:BSTR; bstrUrl:BSTR; [varAsync:variant; bstrUser:variant; bstrPassword:variant]);
function setRequestHeader(bstrHeader:BSTR; bstrValue:BSTR);
function getResponseHeader(bstrHeader:BSTR): BSTR;
function getAllResponseHeaders: BSTR;
function send([varBody:variant]);
function abort;
property-get status: I4;
property-get statusText: BSTR;
property-get responseXML: IDispatch;
property-get responseText: BSTR;
property-get responseBody: variant;
property-get responseStream: variant;
property-get readyState: I4;
property-put onreadystatechange(IDispatch);


Class DOMDocument60; // W3C-DOM XML Document 6.0 (Apartment)
GUID={88D96A05-F192-11D4-A65F-0040963251E5};
function QueryInterface(riid:^GUID; out ppvObj:^^void);
function AddRef: UI4;
function Release: UI4;
function GetTypeInfoCount(out pctinfo:^UINT);
function GetTypeInfo(itinfo:UINT; lcid:UI4; out pptinfo:^^void);
function GetIDsOfNames(riid:^GUID; rgszNames:^^I1; cNames:UINT; lcid:UI4; out rgdispid:^I4);
function Invoke(dispidMember:I4; riid:^GUID; lcid:UI4; wFlags:UI2; pdispparams:^DISPPARAMS; out pvarResult:^variant; out pexcepinfo:^EXCEPINFO; out puArgErr:^UINT);
property-get nodeName: BSTR;
property-get nodeValue: variant;
property-put nodeValue(variant);
property-get nodeType: DOMNodeType;
property-get parentNode: ^IXMLDOMNode;
property-get childNodes: ^IXMLDOMNodeList;
property-get firstChild: ^IXMLDOMNode;
property-get lastChild: ^IXMLDOMNode;
property-get previousSibling: ^IXMLDOMNode;
property-get nextSibling: ^IXMLDOMNode;
property-get attributes: ^IXMLDOMNamedNodeMap;
function insertBefore(newChild:^IXMLDOMNode; refChild:variant): ^IXMLDOMNode;
function replaceChild(newChild:^IXMLDOMNode; oldChild:^IXMLDOMNode): ^IXMLDOMNode;
function removeChild(childNode:^IXMLDOMNode): ^IXMLDOMNode;
function appendChild(newChild:^IXMLDOMNode): ^IXMLDOMNode;
function hasChildNodes: bool;
property-get ownerDocument: ^IXMLDOMDocument;
function cloneNode(deep:bool): ^IXMLDOMNode;
property-get nodeTypeString: BSTR;
property-get text: BSTR;
property-put text(BSTR);
property-get specified: bool;
property-get definition: ^IXMLDOMNode;
property-get nodeTypedValue: variant;
property-put nodeTypedValue(variant);
property-get dataType: variant;
property-put dataType(BSTR);
property-get xml: BSTR;
function transformNode(stylesheet:^IXMLDOMNode): BSTR;
function selectNodes(queryString:BSTR): ^IXMLDOMNodeList;
function selectSingleNode(queryString:BSTR): ^IXMLDOMNode;
property-get parsed: bool;
property-get namespaceURI: BSTR;
property-get prefix: BSTR;
property-get baseName: BSTR;
function transformNodeToObject(stylesheet:^IXMLDOMNode; outputObject:variant);
property-get doctype: ^IXMLDOMDocumentType;
property-get implementation: ^IXMLDOMImplementation;
property-get documentElement: ^IXMLDOMElement;
property-putref documentElement(^IXMLDOMElement);
function createElement(tagName:BSTR): ^IXMLDOMElement;
function createDocumentFragment: ^IXMLDOMDocumentFragment;
function createTextNode(data:BSTR): ^IXMLDOMText;
function createComment(data:BSTR): ^IXMLDOMComment;
function createCDATASection(data:BSTR): ^IXMLDOMCDATASection;
function createProcessingInstruction(target:BSTR; data:BSTR): ^IXMLDOMProcessingInstruction;
function createAttribute(name:BSTR): ^IXMLDOMAttribute;
function createEntityReference(name:BSTR): ^IXMLDOMEntityReference;
function getElementsByTagName(tagName:BSTR): ^IXMLDOMNodeList;
function createNode(type:variant; name:BSTR; namespaceURI:BSTR): ^IXMLDOMNode;
function nodeFromID(idString:BSTR): ^IXMLDOMNode;
function load(xmlSource:variant): bool;
property-get readyState: I4;
property-get parseError: ^IXMLDOMParseError;
property-get url: BSTR;
property-get async: bool;
property-put async(bool);
function abort;
function loadXML(bstrXML:BSTR): bool;
function save(destination:variant);
property-get validateOnParse: bool;
property-put validateOnParse(bool);
property-get resolveExternals: bool;
property-put resolveExternals(bool);
property-get preserveWhiteSpace: bool;
property-put preserveWhiteSpace(bool);
property-put onreadystatechange(variant);
property-put ondataavailable(variant);
property-put ontransformnode(variant);
property-get namespaces: ^IXMLDOMSchemaCollection;
property-get schemas: variant;
property-putref schemas(variant);
function validate: ^IXMLDOMParseError;
function setProperty(name:BSTR; value:variant);
function getProperty(name:BSTR): variant;
function validateNode(node:^IXMLDOMNode): ^IXMLDOMParseError;
function importNode(node:^IXMLDOMNode; deep:bool): ^IXMLDOMNode;
function ondataavailable: HResult;
function onreadystatechange: HResult;

msxml6.dll 内部完整的对象与方法列表

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com