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

Batch file 如何更改文件类型并使用批处理文件运行该文件?,batch-file,vbscript,command-prompt,file-type,Batch File,Vbscript,Command Prompt,File Type,我目前正在尝试使用从internet下载的文件,但将其作为其他文件运行。我写过: cscript.exe /NoLogo "https://somesite.net/personal/me/Shared%%20Documents/filetorun.vbr" >"numbers.txt"" 但实际上我想以.vbs文件的形式运行filetorun.vbr。出于安全原因,我无法上传.vbs版本,因此我不得不接受.vbr 如何将vbr文件作为vbs文件运行 谢谢你的帮助 根据这篇文章 Cscr

我目前正在尝试使用从internet下载的文件,但将其作为其他文件运行。我写过:

cscript.exe /NoLogo "https://somesite.net/personal/me/Shared%%20Documents/filetorun.vbr" >"numbers.txt""
但实际上我想以.vbs文件的形式运行filetorun.vbr。出于安全原因,我无法上传.vbs版本,因此我不得不接受.vbr

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


谢谢你的帮助

根据这篇文章

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

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


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

cscript.exe /E:VBS myfile.vbr

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

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

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

是的,我知道我的代码是错误的,这就是为什么我说我的意图是将vbr作为vbs文件运行。vbr文件中编写的代码适合转换为vbs,我知道,因为我是编写它的人。我希望有一种方法可以将vbr文件作为vbs文件运行。不过谢谢你!:)@bellere如果您对上载扩展名为*.vbs的文件有安全限制,也许您可以在运行脚本之前进行重命名?*.vbr不起作用的主要原因是Cscript在内部使用文件扩展名来区分vbscript和jscript。它是硬编码的…是的,我试图重命名它,但该网站拒绝了重命名,因为它看到了.vbs扩展名。是否有任何可以运行vbr的Windows脚本主机引擎的命令行版本?我尝试了:cscript.exe/NoLogo“”>“numbers.txt”。但是它显示了错误:CScript错误:加载脚本“C:\Users\Bel\Desktop\”失败(文件名、目录名或卷标语法不正确)。请注意,问题是当我只想直接访问站点时,它会转到C:\Users\Bel\Desktop\上。有解决办法吗?哦,我是说我试过:cscript.exe/E:VBS“”。问题仍然存在。请在E选项中使用双斜杠:
cscript.exe//E:VBS myfile.vbr
@bellere:它不起作用,因为您试图从URL运行脚本。您需要先将脚本下载到计算机上。请参阅。因此我尝试了wscript.exe//e:vbs“”>“numbers.txt”。但是出现了一个错误,称为CScript error:加载脚本“C:\Users\Bel\Desktop\somesite.net/personal/me/Shared%%20Documents/filetorun.vbr”;失败(文件名、目录名或卷标语法不正确)。请注意,问题是当我只想直接访问站点时,它会转到C:\Users\Bel\Desktop\上。有解决办法吗?你想做什么。这是一个程序员网站。您应该能够使用Windows。我告诉过你怎么了,所以你也做了同样的错事???????。您不能在internet上运行脚本。它采用一个文件路径。该链接是UNC还是URL(网址)。如果是UNC(一个文件路径),则服务器的前缀为\\