缺少对象: 'xcryptDll' 还有Microsoft VBScript 运行时错误 错误 '800a01a8'
缺少对象: 'xcryptDll' /include/inc_connxml.asp,行 63
我用的是iis调试的,本地调试,和上传服务器都一样报错!大家帮帮我吧!
==============================
以下是inc_connxml.asp程序63行附件的代码
==============================
''开始加载XML文件
public sub load_xmltxt(filepath)
if isnull(xmldom)=false then ''新增的判断
dim isok_loadxml,xmldoc_txt
'' xmldoc_txt=get_file(filepath) ''适用于XML文件为gb2312格式的读取
xmldoc_txt=get_formatfile(filepath,-1) ''重新编码xml文件内容(Unicode)
'' xmldoc_txt=stream_getfile(filepath,1) ''适用于XML文件为gb2312格式的读取
xmldoc_txt=xcryptDll.Decrypt(xmldoc_txt)
xmldom.async=false ''必需属性定义
isok_loadxml=xmldom.loadXML(xmldoc_txt)
if isok_loadxml=false then
Response.Write "初始化的XML数据不存在!"
Response.End
exit sub
end if
xmldom.PreserveWhitespace=false
set xml_root=xmldom.documentElement
end if
end sub
==============================
以下是inc_connxml.asp文件全部代码
==============================
<%
'
'ok
'
const MsxmlVersion="Microsoft.XMLDOM"
''const MsxmlVersion="Msxml2.XMLHTTP"
''const MsxmlVersion="Msxml2.FreeThreadedDOMDocument.3.0"
''const MsxmlVersion="Msxml2.DOMDocument.4.0"
class class_connxml
public xmldom,xml_root,xml_nodelist,xmlfile,error_info,xml_newnode,xcryptDll
''对象初始化
private sub class_initialize()
on error resume next
set xmldom=Server.CreateObject(MsxmlVersion)
if int(err.number)> 0 then
response.write err.description
err.clear
response.end
end if
set xcryptDll=Server.CreateObject("Cuttle.CCrypt")
if int(err.number)> 0 then
response.write err.description
err.clear
response.end
end if
end sub
''判断文件是否存在
function isexist_file(file_path)
dim filetemp,fileos,fso_sys_var
fso_sys_var="script"&"ing.file"&"sys"&"tem"&"object"
set fileos=server.createobject(fso_sys_var)
isexist_file=false
if (fileos.fileexists(file_path)) then
filetemp=true
else
filetemp=false
end if
set fileos=nothing
isexist_file=filetemp
end function
''开始加载XML文件
public sub load_xmldoc(filepath)
if isnull(xmldom)=false then ''新增的判断
xmlfile=server.mappath(filepath)
if not xmldom.load(xmlfile) then
Response.Write "初始化的XML数据不存在!"
Response.End
exit sub
end if
xmldom.PreserveWhitespace=true
set xml_root=xmldom.documentElement
''response.write xml_root.xml
end if
end sub
''开始加载XML文件
public sub load_xmltxt(filepath)
if isnull(xmldom)=false then ''新增的判断
dim isok_loadxml,xmldoc_txt
'' xmldoc_txt=get_file(filepath) ''适用于XML文件为gb2312格式的读取
xmldoc_txt=get_formatfile(filepath,-1) ''重新编码xml文件内容(Unicode)
'' xmldoc_txt=stream_getfile(filepath,1) ''适用于XML文件为gb2312格式的读取
xmldoc_txt=xcryptDll.Decrypt(xmldoc_txt)
xmldom.async=false ''必需属性定义
isok_loadxml=xmldom.loadXML(xmldoc_txt)
if isok_loadxml=false then
Response.Write "初始化的XML数据不存在!"
Response.End
exit sub
end if
xmldom.PreserveWhitespace=false
set xml_root=xmldom.documentElement
end if
end sub
''获取第二级节点
public function get_subnode(nodename)
dim current_node
set current_node=xml_root.selectNodes(nodename)
if not(current_node is nothing) and (current_node.length>0) then
set xml_nodelist=current_node
else
set xml_nodelist=nothing
end if
set get_subnode=xml_nodelist
end function
''获取单节点对象
public function get_onenode(sel_nodeinfo)
dim current_node
set current_node=xml_root.selectSingleNode(sel_nodeinfo)
if not(current_node is nothing) then
set get_onenode=current_node
else
set get_onenode=nothing
end if
end function
''获取属性节点对象
public function get_attrnode(nodename,attr_name,attr_text)
dim current_node
set current_node=xml_root.selectSingleNode(nodename & "[@" & attr_name & "='" & attr_text & "']")
if not(current_node is nothing) then
set get_attrnode=current_node
else
set get_attrnode=nothing
end if
end function
''更新指定节点对象、属性名的节点的属性值
public sub update_attrnode(node_obj,attr_name,attr_text)
dim current_node,nownode_obj
set nownode_obj=node_obj
if not(node_obj is nothing) then
set current_node=nownode_obj.attributes.getNamedItem(attr_name)
if not(current_node is nothing) then
current_node.text=attr_text
end if
end if
end sub
''更新指定节点对象的元素值
public sub update_elemnode(nodename,elem_name,elem_text)
dim current_node,cdata_elem
if trim(nodename)<>"" then
set current_node=xml_root.selectSingleNode(nodename & "/" & elem_name)
else
set current_node=xml_root.selectSingleNode(elem_name)
end if
set cdata_elem=xmldom.createCDATASection(elem_text)
if not(current_node is nothing) then
current_node.removeChild(current_node.firstChild)
current_node.appendChild(cdata_elem)
end if
end sub
''删除指定节点对象的元素
public sub delete_elemnode(node_obj)
if not(node_obj is nothing) then
xmldom.PreserveWhitespace=true
xml_root.removeChild(node_obj)
end if
end sub
''保存该文档
public sub save_xmldom()
xmldom.PreserveWhitespace=true
xmldom.save xmlfile
end sub
''返回指定节点对象的属性值
public function getattr_value(nodename,attr_name,attr_text,other_attrname)
if not(xml_root is nothing) then ''新增的判断
dim current_node,other_attrobj
getattr_value=""
set current_node=xml_root.selectSingleNode(nodename & "[@" & attr_name & "='" & attr_text & "']")
if not(current_node is nothing) then
set other_attrobj=current_node.attributes.getNamedItem(other_attrname)
if not(other_attrobj is nothing) then
getattr_value=other_attrobj.text
end if
end if
end if
end function
''返回指定节点对象的值
public function getelem_value(nodename,elem_name)
if isnull(xml_root)=false then ''新增的判断
dim current_node,other_attrobj
getelem_value=""
if trim(nodename)<>"" then
set current_node=xml_root.selectSingleNode(nodename & "/" & elem_name)
else
set current_node=xml_root.selectSingleNode(elem_name)
end if
if not(current_node is nothing) then
getelem_value=current_node.text
end if
end if
end function
''释放对象中的成员
public sub xmldom_clear()
set xmldom=nothing
set xcryptDll=nothing
set xml_root=nothing
set xml_nodelist=nothing
xmlfile=""
end sub
''将xml文件与xslt文件组合转换为html文件内容
function getHtml_XmlXslt(xml_file,xsl_file)
dim xmlDoc,xslDoc,xmlfile,xslfile
xmlfile=server.MapPath(xml_file)
xslfile=server.MapPath(xsl_file)
on error resume next
''Load XML file
set xmlDoc = Server.CreateObject(MsxmlVersion)
''call alertmsg(xml_file & "--" & xsl_file)
if err.number > 0 then
''response.write err.description
''call alertmsg(err.description)
error_info=err.description
err.clear
response.end
end if
xmlDoc.async = false
xmlDoc.load(xmlfile)
''Load XSL file
set xslDoc = Server.CreateObject(MsxmlVersion)
if err.number > 0 then
''response.write err.description
''call alertmsg(err.description)
error_info=err.description
err.clear
response.end
end if
xslDoc.async = false
xslDoc.load(xslfile)
'Transform file
getHtml_XmlXslt=xmlDoc.transformNode(xslDoc)
'' response.write err.description
set xmlDoc=nothing
set xslDoc=nothing
end function
''将xml文件与xslt文件组合转换为html文件内容
function getHtml_DocXslt(xml_file,xsl_file)
dim xmlDoc,xslDoc,xmlfile,xslfile
''xmlfile=server.MapPath(xml_file)
xslfile=server.MapPath(xsl_file)
on error resume next
''Load XML file
set xmlDoc = Server.CreateObject(MsxmlVersion)
''call alertmsg(xml_file & "--" & xsl_file)
if err.number > 0 then
''response.write err.description
''call alertmsg(err.description)
error_info=err.description
err.clear
response.end
end if
xmlDoc.async = false
''xmlDoc.load(xmlfile)
xmlDoc.loadXML(xml_file)
''Load XSL file
set xslDoc = Server.CreateObject(MsxmlVersion)
if err.number > 0 then
''response.write err.description
''call alertmsg(err.description)
error_info=err.description
err.clear
response.end
end if
xslDoc.async = false
xslDoc.load(xslfile)
'Transform file
getHtml_DocXslt=xmlDoc.transformNode(xslDoc)
set xmlDoc=nothing
set xslDoc=nothing
end function
''设置错误信息的属性定义
public property get getErrorInfo()
getErrorInfo = error_info
end property
end class
%>
请问各位高手这个怎么解决啊,是不是需要什么组件,但是不知道在哪里下载哪个组件,谢谢!!