在Windows 7上,我的VBScript中的下面一行出现了一个错误:
Set wsh = WScript.CreateObject("WScript.Shell")错误:
Microsoft VBScript运行时错误:参数数错误或属性分配无效:“wsh”
使用wsh以外的任何名称都有效。
我在网上搜索信息,但是保留关键字的页面没有提到wsh。
我在CMD处理器中使用cscript命令运行上面的脚本。
问题回答后的更新:
将变量声明为Dim wsh重写其关键字状态,允许在脚本中使用该变量。在发布这个问题后发现了这个信息,在这里:http://forums.devshed.com/visual-basic-programming-52/bizzare-finding-username-918597.html
发布于 2017-01-05 15:46:28
wsh是WScript对象的内置别名,允许您编写
wsh.Echo "foo"
wsh.StdErr.WriteLine "bar"
wsh.Quit 42而不是
WScript.Echo "foo"
WScript.StdErr.WriteLine "bar"
WScript.Quit 42不过,据我所知,这不在文档的范围之内。
编辑:显然可以通过在使用wsh之前将wsh定义为变量来解决这个问题:
Dim wsh
Set wsh = CreateObject("WScript.Shell")但是,请注意,这样做将完全掩盖原始标识符,也就是说,在不留下定义变量的上下文(在全局变量情况下意味着重新启动解释器)的情况下,您将无法获得原始行为,因为您需要can't un-dim a variable。
https://stackoverflow.com/questions/41488788
复制相似问题