【问题标题】:Need help executing VBScript on 32bit and 64bit machines需要帮助在 32 位和 64 位机器上执行 VBScript
【发布时间】:2015-12-09 18:44:53
【问题描述】:

我正在尝试运行以下代码:

 Dim objShell  'Creates Windows Shell Object
   set objShell = Nothing

     objShell.run \\omserver\netlogon\Mater2kupdate.bat

它已经运行了好几年(当我们运行 Windows 32 位时)。但现在我们正在将操作系统更改为 Windows 64 位。当我运行相同的代码时,我收到一条错误消息:

Error message says Script: C:\Users\username\Desktop\filename.vbs Line:5 Char:4 Error: Object required Code: 800A01A8 Source: Microsoft VBScript runtime error

(希望上传的图片让你看到错误信息)。

我已经对此错误消息进行了一些搜索,看起来该错误是因为我试图在 64 位机器上运行代码。我已经尝试寻找如何编写它,以便它可以在 32 位或 64 位上运行,但我对任何示例的理解都不足以使用它们。我意识到我将不得不修改我找到的代码以便它适用于我,但我没有足够的知识来弄清楚它。你能帮我吗?

谢谢。

【问题讨论】:

  • 脚本的第 5 行是什么?您应该在问题中包含相关的脚本代码。
  • 路径用引号括起来。然后你将 objShell 设置为空,然后尝试运行它......

标签: vbscript


【解决方案1】:

下面是详细介绍

Dim objShell  'Creates Windows Shell Object - NO It declares a variable of the type Variant
set objShell = Nothing 'releases the object...but you never instantiated the object

 objShell.run \\omserver\netlogon\Mater2kupdate.bat -'will fail as objShell is nothing

你需要实例化Wscript.Shell然后你才能使用它的Run方法。

Dim objShell  'declare a variable to hold our Windows Shell Object
set objShell = CreateObject("WScript.Shell")

 objShell.run "\\omserver\netlogon\Mater2kupdate.bat"

【讨论】:

  • 谢谢你,Rich,你是对的!这就是我尝试快速完成的结果。
  • 非常感谢 Rich!那效果很好。你是最棒的。
猜你喜欢
  • 2011-02-17
  • 2011-09-04
  • 2017-02-16
  • 2015-05-30
  • 1970-01-01
  • 1970-01-01
  • 2012-11-07
  • 2015-06-20
  • 1970-01-01
相关资源
最近更新 更多