如何更改文件类型并使用批处理文件运行该文件?

时间:2014-05-23 02:23:11

标签: batch-file vbscript command-prompt file-type

我目前正在尝试使用从互联网下载的文件,但将其作为不同的文件运行。我写了:

cscript.exe /NoLogo "https://somesite.net/personal/me/Shared%%20Documents/filetorun.vbr" >"numbers.txt""

但我实际上想将filetorun.vbr作为.vbs文件运行。出于安全原因,我无法上传.vbs版本,所以我不得不接受.vbr。

如何将vbr文件作为vbs文件运行?

感谢您的帮助!

4 个答案:

答案 0 :(得分:0)

根据这篇文章http://technet.microsoft.com/en-us/library/bb490887.aspx

Cscript.exe仅支持* .vbs和* .js

  

Cscript.exe是Windows脚本宿主的命令行版本   提供用于设置脚本属性的命令行选项。同   在Cscript.exe中,您可以通过键入脚本文件的名称来运行脚本   在命令提示符下。像Microsoft Internet Explorer,Windows   Script Host充当Windows Script兼容的控制器   脚本引擎,但Windows脚本宿主的内存非常低   要求。 Windows脚本宿主非常适合交互式和   非交互式脚本编写需求,例如登录脚本和   管理脚本。 Windows脚本宿主支持编写的脚本   在VBScript或JScript中。从桌面或脚本启动脚本时   从命令提示符,脚本宿主读取并传递   指定脚本文件内容到注册的脚本引擎。该   脚本引擎使用文件扩展名(即.vbs用于VBScript和.js   用于JScript )来识别脚本。因此,您不需要   知道确切的程序标识符(即ProgID)   脚本引擎。脚本宿主维护脚本的映射   程序标识符的扩展,并使用Windows XP   关联模型为给定脚本启动适当的引擎。   有关Windows脚本宿主的详细信息,请参阅Windows脚本   主机有关CScript.exe的详细信息,请参阅使用运行脚本   基于命令行的脚本宿主(cscript.exe)

答案 1 :(得分:0)

您可以使用/E选项指定脚本语言:

cscript.exe /E:VBS myfile.vbr

答案 2 :(得分:0)

是。它将运行vbr。这是你的网址错了。你有两个百分号。但是在脚本中只是使用空格,因为我们不是浏览器,也不必遵循他们愚蠢的规则。

wscript //e:vbs "C:\Users\A User\Desktop\CreateTextFile.vbr"

答案 3 :(得分:0)

Windows脚本宿主无法直接从Internet(来自HTTP / HTTPS链接)运行脚本。您需要先将脚本下载到计算机上。

例如,使用VBScript:

strURL = "https://somesite.net/personal/me/Shared%%20Documents/filetorun.vbr"
strFileName = "C:\filetorun.vbs" ' Note the VBS extension - you can rename files when downloading

DownloadFile strURL, strFileName

Dim oShell : Set oShell = CreateObject("WScript.Shell")
oShell.Run "cscript """ + strFileName + """"


Sub DownloadFile(URL, LocalFileName)
  Dim oHttp : Set oHttp = CreateObject("Microsoft.XMLHTTP")
  Dim oStream : Set oStream = CreateObject("ADODB.Stream")

  oHttp.Open "GET", URL, False
  oHttp.Send

  oStream.Type = 1 ' adTypeBinary 
  oStream.Open
  oStream.Write oHttp.responseBody
  oStream.SaveToFile LocalFileName, 2 ' adSaveCreateOverWrite
End Sub