如何在独立的.vbs文件中从VBScript调用DotNetFactory? [英] How do I call DotNetFactory from VBScript in a stand-alone .vbs file?

查看:51
本文介绍了如何在独立的.vbs文件中从VBScript调用DotNetFactory?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在探索用于扩展QuickTest Professional脚本功能的选项,并且遇到了

I've been exploring options for expanding my QuickTest Professional scripting capabilities, and came across this article this morning, so I decided to experiment a bit. The code below works fine when executed inside the QTP environment, but I could see a use for this outside of the QTP environment as well. Unfortunately, it is causing an error when run from a stand-alone .vbs file

Set MyDate = DotNetFactory.CreateInstance("System.DateTime").Now
msgbox MyDate.ToShortDateString()

错误是所需对象:'DotNetFactory'"

The error is "Object Required: 'DotNetFactory'"

我以前从VBScript进行过.Net调用,但是他们都没有使用过DotNetFactory.诸如

I've made .Net calls from VBScript before, but none of them have used DotNetFactory. Code such as

Set coll = CreateObject("System.Collections.Queue")

不引起错误.

我需要设置对DotNetFactory的引用吗?文章中的文字

Do I need to set a reference to DotNetFactory? The text from the article

我们使用"System.DateTime"作为类型名称.我们不需要指定程序集为此,因为它属于已经已加载名称空间系统"(mscorlib.dll).

We use ‘System.DateTime’ as type name. We do not need to specify the assembly for this as it belongs to the already loaded namespace ‘System’ (mscorlib.dll).

让我这样想,因为脚本编辑器不会自动加载任何内容.如果是这样,我该怎么做?我不是在使用IDE,而是在使用文本编辑器,因此任何引用都必须由脚本本身加载.

makes me think so, because nothing is automatically loaded by my script editor. If so, how do I do this? I am not using an IDE, just a text editor, so any references would have to be loaded by the script itself.

更新:正如Motto指出的那样,如果没有一些额外的工作就无法完成.文章中的引文指出,mscorlib中包含了 System.DateTime 而不是 DotNetFactory .

Update: As pointed out by Motto, it can't be done without some extra work. The quote from the article was pointing out that System.DateTimenot DotNetFactory is included in mscorlib.

推荐答案

AFAIK DotNetFactory 是QTP创建的对象,而不是您在对Mikeb答案的评论中所说的mscorelib的一部分.因此,除非QTP公开了prog-id,否则您不能从VBS文件的站立位置访问它.

AFAIK DotNetFactory is an object created by QTP, not part of mscorelib as you said in a comment to Mikeb's answer. Therefore you can't access it from a stand along VBS file unless QTP has exposed a prog-id.

这篇关于如何在独立的.vbs文件中从VBScript调用DotNetFactory?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆