lnIsChange = true
end if
next
if blnIsChange then
ReAllNode = true
call s_objXml.save(s_strXmlPath)
else
ReAllNode = false
end if
end function
'-----------------------------------------
'目的: 删除某一个节点
'参数: 节点内容
'返回: 找不到节点就返回TRUE
'-----------------------------------------
public function ReNode(strPath)
dim objNode
set objNode = SelectNode(strPath)
if objNode is nothing then
ReNode = true
else
call s_objNodeRoot.removeChild(objNode)
call s_objXml.save(s_strXmlPath)
end if
end function
'-----------------------------------------
'目的: 寻找某个节点
'参数: strPath: 节点内容
'返回: 找到就返回该节点,找不到就返回nothing
'-----------------------------------------
private function SelectNode(ByVal strPath)
dim objNode
strPath = UCase(strPath)
for each objNode in s_objNodeRoot.childNodes
if UCase(objNode.childNodes.item(0).nodeValue) = strPath then
Set SelectNode = objNode
exit function
end if
next
set SelectNode = nothing
end function
'--------------------------------------------
'目的: 查看DLL文件列表里某个文件注册状态
'参数: 该文件路径
'返回: 1=已经注册
' 0=未注册
' -1=找不到该文件
'--------------------------------------------
public function CheckDll(strPath)
dim objNode
set objNode = SelectNode(strPath)
if objNode is nothing then
CheckDll = -1
else
CheckDll = Cint(objNode.Attributes.getNamedItem(s_strAttributeName).nodeValue)
end if
end function
'--------------------------------------
'目的: 将所有未注册的DLL注册
'返回: 如果有某个DLL注册失败就返回TRUE
'--------------------------------------
public function RegAllNode()
dim objNode
for each objNode in s_objNodeRoot.childNodes
if objNode.Attributes.getNamedItem(s_strAttributeName).nodeValue = "0" then
if Reg(objNode.childNodes.item(0).nodeValue , true) then
objNode.Attributes.getNamedItem(s_strAttributeName).nodeValue = 1
else
RegAllNode = true
end if
end if
next
end function
'-----------------------------------------
'目的: 注册DLL
'参数: strPath: 要注册Dll文件路径
' blnLoding: 是否等待注册完成才继续执行程序
'返回: 如果blnLoging=TRUE,注册成功就返回True
'-----------------------------------------
private function Reg(strPath , blnLoding)
dim objShell
set objShell = CreateObject("Wscript.Shell")
if objShell.Run("regsvr32.exe /s " & strPath , , blnLoding) = 0 then
Reg = true
end if
set objShell = nothing
end function
End Class
end if
next
if blnIsChange then
ReAllNode = true
call s_objXml.save(s_strXmlPath)
else
ReAllNode = false
end if
end function
'-----------------------------------------
'目的: 删除某一个节点
'参数: 节点内容
'返回: 找不到节点就返回TRUE
'-----------------------------------------
public function ReNode(strPath)
dim objNode
set objNode = SelectNode(strPath)
if objNode is nothing then
ReNode = true
else
call s_objNodeRoot.removeChild(objNode)
call s_objXml.save(s_strXmlPath)
end if
end function
'-----------------------------------------
'目的: 寻找某个节点
'参数: strPath: 节点内容
'返回: 找到就返回该节点,找不到就返回nothing
'-----------------------------------------
private function SelectNode(ByVal strPath)
dim objNode
strPath = UCase(strPath)
for each objNode in s_objNodeRoot.childNodes
if UCase(objNode.childNodes.item(0).nodeValue) = strPath then
Set SelectNode = objNode
exit function
end if
next
set SelectNode = nothing
end function
'--------------------------------------------
'目的: 查看DLL文件列表里某个文件注册状态
'参数: 该文件路径
'返回: 1=已经注册
' 0=未注册
' -1=找不到该文件
'--------------------------------------------
public function CheckDll(strPath)
dim objNode
set objNode = SelectNode(strPath)
if objNode is nothing then
CheckDll = -1
else
CheckDll = Cint(objNode.Attributes.getNamedItem(s_strAttributeName).nodeValue)
end if
end function
'--------------------------------------
'目的: 将所有未注册的DLL注册
'返回: 如果有某个DLL注册失败就返回TRUE
'--------------------------------------
public function RegAllNode()
dim objNode
for each objNode in s_objNodeRoot.childNodes
if objNode.Attributes.getNamedItem(s_strAttributeName).nodeValue = "0" then
if Reg(objNode.childNodes.item(0).nodeValue , true) then
objNode.Attributes.getNamedItem(s_strAttributeName).nodeValue = 1
else
RegAllNode = true
end if
end if
next
end function
'-----------------------------------------
'目的: 注册DLL
'参数: strPath: 要注册Dll文件路径
' blnLoding: 是否等待注册完成才继续执行程序
'返回: 如果blnLoging=TRUE,注册成功就返回True
'-----------------------------------------
private function Reg(strPath , blnLoding)
dim objShell
set objShell = CreateObject("Wscript.Shell")
if objShell.Run("regsvr32.exe /s " & strPath , , blnLoding) = 0 then
Reg = true
end if
set objShell = nothing
end function
End Class