VBscript错误:需要对象:';wscript';

VBscript错误:需要对象:';wscript';,vbscript,delphi-xe,Vbscript,Delphi Xe,有人能告诉我为什么这行会出错: set my_obj = wscript.CreateObject("ObjectTest","pref_") 它给出了以下错误: 所需对象:“wscript” 如果我运行此代码: Set WScript = CreateObject("WScript.Shell") set my_obj = CreateObject("ObjectTest","pref_") 我得到了这个错误: 对象不支持此属性或方法:“CreateObject” 我正在Delphi应用程

有人能告诉我为什么这行会出错:

set my_obj = wscript.CreateObject("ObjectTest","pref_")
它给出了以下错误:

所需对象:“wscript”

如果我运行此代码:

Set WScript = CreateObject("WScript.Shell")
set my_obj = CreateObject("ObjectTest","pref_")
我得到了这个错误:

对象不支持此属性或方法:“CreateObject”

我正在Delphi应用程序中运行vbscript

所需对象:“wscript”

我正在Delphi应用程序中运行vbscript

这就是脚本失败的原因。只有当脚本由
wscript.exe
运行时,才会定义
wscript
对象。要执行您正在尝试的操作,您需要实现自己的对象,并将其提供给脚本环境,以便脚本代码在需要时访问

假设您正在使用来运行脚本,您可以编写一个实现该接口的COM自动化对象,然后您可以创建该对象的实例,并在调用开始运行脚本之前将其交给该方法

例如,编写一个自动对象,公开它自己的
CreateObject()
方法,将其命名为
App
,然后脚本可以调用
App.CreateObject()
。然后,您的
CreateObject()
实现可以创建真正请求的对象,并根据需要将事件处理程序连接到该对象。要将事件发回脚本,请使用该方法为脚本中定义的所需过程检索
IDispatch
,然后与DISPID 0和
DISPATCH\u方法一起使用
使用所需输入参数执行该过程的标志

您的对象可以实现您希望脚本能够访问的任何属性和方法

所需对象:“wscript”

我正在Delphi应用程序中运行vbscript

这就是脚本失败的原因。只有当脚本由
wscript.exe
运行时,才会定义
wscript
对象。要执行您正在尝试的操作,您需要实现自己的对象,并将其提供给脚本环境,以便脚本代码在需要时访问

假设您正在使用来运行脚本,您可以编写一个实现该接口的COM自动化对象,然后您可以创建该对象的实例,并在调用开始运行脚本之前将其交给该方法

例如,编写一个自动对象,公开它自己的
CreateObject()
方法,将其命名为
App
,然后脚本可以调用
App.CreateObject()
。然后,您的
CreateObject()
实现可以创建真正请求的对象,并根据需要将事件处理程序连接到该对象。要将事件发回脚本,请使用该方法为脚本中定义的所需过程检索
IDispatch
,然后与DISPID 0和
DISPATCH\u方法一起使用
使用所需输入参数执行该过程的标志


您的对象可以实现您希望脚本能够访问的任何属性和方法。

脚本失败的原因是出现了一些错误

  • 不要使用“
    WScript
    ”作为对象,尤其是在基于Windows的脚本主机
    中进行编码时(或
    WSH
    ),因为程序假定您正在运行
    WScript.exe
    或调用
    WScript
    命令
  • 使用
    Dim
    !如果第一条规则不是空的,这就是原因。在VBScript中使用命令“
    Option Explicit
    ”要求用户对任何
    对象进行
    调暗
    或调用
    对象
  • 固定代码为:

    Option Explicit
    Dim 1, 2
    Set 1 = WScript.CreateObject("WScript.Shell")
    Set 2 = WScript.CreateObject("ObjectTest", "pref_")
    

    脚本失败的原因是由于出现了一些错误

  • 不要使用“
    WScript
    ”作为对象,尤其是在基于Windows的脚本主机
    中进行编码时(或
    WSH
    ),因为程序假定您正在运行
    WScript.exe
    或调用
    WScript
    命令
  • 使用
    Dim
    !如果第一条规则不是空的,这就是原因。在VBScript中使用命令“
    Option Explicit
    ”要求用户对任何
    对象进行
    调暗
    或调用
    对象
  • 固定代码为:

    Option Explicit
    Dim 1, 2
    Set 1 = WScript.CreateObject("WScript.Shell")
    Set 2 = WScript.CreateObject("ObjectTest", "pref_")
    

    如果在此应用程序中运行相同的脚本,则会生成类似错误:如果在此应用程序中运行相同的脚本,则会生成类似错误: