从 msxml6.dll 中获取 DOMDocument 对象的方法与属性
作者:快乐笛子 来源:快乐笛子的博客 发布时间:2009-02-22 18:46:00
一直以来都对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;
猜你喜欢
- 1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数
- 问题:导入数据时是否需要禁用索引?解答:在使用load data导入数据时,如果导入的表是MyISAM的,对于空表,MySQL数据库会把所有
- 因为写js经常需要用到访问样式,我们常用的做法是通过 DOM.style.XXX来读写样式信息的。可是DOM.style这种写法只能访问&l
- 有空余的时候自己写了一下,代码没有进行很好的规整。如果发现bug请及时通告我,谢谢 主要功能:1、点击插入表情,可选
- ASP 内建对象Active Server Pages 提供内建对象,这些对象使用户更容易收集通过浏览器请求发送的信息、响应浏览器以及存储用
- 惊叹于老外的发现 《CSS Background image on html image element?》,自己从没关注过,也没想过如此的
- 根据一般做法的话,导出部分字段时没有办法生成格式化XML文件,所以导入时就没有办法格式化导入数据。 我想到两点,1.手工修改格式化XML文件
- oracle数据库的权限系统分为系统权限与对象权限。系统权限( database system privilege )可以让用户执行特定的命
- 如何让页面背景五彩缤纷? <%@ Language=VBScript %><html>
- 工作时常遇到需要在其它地方拷贝样式,比如Firebug之类的,但是复制出来的样式是带有换行和空格的,对于我这种有点洁癖的人来说,经常会一个个
- 基于web的技术中,分页是一个老的不能再老的,但大家津津乐道的问题,随着xml技术的日渐应用,把xml应用到分页当中,也是一种可能,当然网上
- 虽然我只是把豆瓣当作一个纪录工具来用,纪录下自己看过的电影、听过的音乐、读过的书籍,我几乎不关注豆瓣上的任何影评、乐评、音衣服之类的内容,但
- 前言:看本教程,必须先仔细看前言的内容,否则会进入误区!最近在做个性休闲服装内网站的设计课程,过程中发现,个性元素的应用成为最难的问题,第一
- 代码如下:CREATE PROCEDURE page @tblName varchar(255), -- 表名 @strGetF
- 使用picasa的时候,注意到它首先是显示模糊的图片,然后图片突然变得清晰,这样做有一定的好处——picasa的图片翻页是用javascri
- 1) 用正式表达式 regexp "[u0391-uFFE5]"2) 用length和char_lengthdrop t
- 好了,看看我们的代码吧:upload.htm' 上传页面<html> <body>&nb
- 今天在写BLOG的Trackback时,需要用到当前页的URL地址,并且包括?后的所有参数。在网上看到以下的这段ASP代码,它的
- Yahoo发布了一款基于FireFox的插件,名叫YSlow,这个插件可以分析网站的页面,并告诉你为了提高网站性能,如何基于某些规则而进行优
- 如何用表单在线建立目录?很简单,两个文件就搞定了:creatfolder.htm' 表单文件<form n