欢迎来到入门教程网!

vb

当前位置:主页 > 软件编程 > vb >

VBS中CreateObject和WScript.CreateObject的区别介绍

来源:本站原创|时间:2020-01-10|栏目:vb|点击:

CreateObject和WScript.CreateObject的区别一:
CreateObject是VBS的内置函数,属于语言的一部分;而WScript.CreateObject是Windows脚本宿主(wscript.exe和cscript.exe)提供的WScript对象的方法。类似于批处理中内部命令和外部命令的关系。在VBS中,CreateObject总是可用的,而WScript.CreateObject只有在宿主为wscript.exe和cscript.exe的情况下才可以使用,在WMI、QTP、SecureCRT、EmEditor等其他宿主环境是无法使用的。

CreateObject和WScript.CreateObject的区别二:
如果只用第一个参数,那么CreateObject和WScript.CreateObject几乎是相同的;但是如果要用到第二个参数,那么两者就完全不同了。CreateObject的第二个参数用来通过DCOM在远程服务器上创建对象;而WScript.CreateObject的第二个参数用来创建本地对象并响应事件。

一个响应事件的简单例子:

复制代码 代码如下:

Dim IE
Set IE = WScript.CreateObject("InternetExplorer.Application", "IE_")
IE.Visible = True
IE.Navigate "//www.jb51.net"
Do
WScript.Sleep 1000
Loop

Sub IE_OnQuit()
MsgBox "正在关闭Demon's Blog"
WScript.Quit
End Sub


CreateObject和WScript.CreateObject的区别三:

因为CreateObject是VBS的内置函数,不需要通过COM来调用,所以CreateObject比WScript.CreateObject要稍微快一点点(虽然几乎可以忽略不计):

复制代码 代码如下:

t = Timer
For i = 1 To 100000
Set WshShell = WScript.CreateObject("Wscript.Shell")
Next
WScript.Echo Timer - t

'By Demon
t = Timer
For i = 1 To 100000
Set WshShell = CreateObject("Wscript.Shell")
Next
WScript.Echo Timer - t


Demon的建议:尽量使用CreateObject函数,除非你需要响应事件。这样至少有三个好处:可移植性更好、速度更快、代码更短。

作者: Demon
链接: http://demon.tw/programming/vbs-createobject-wscript-createobject.html

上一篇:Win7下VHD文件右键增强实现代码(vbs+注册表)

栏    目:vb

下一篇:VBScript Enun Remote CMD Shell代码

本文标题:VBS中CreateObject和WScript.CreateObject的区别介绍

本文地址:https://www.xiuzhanwang.com/a1/vb/7332.html

网页制作CMS教程网络编程软件编程脚本语言数据库服务器

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:835971066 | 邮箱:835971066#qq.com(#换成@)

Copyright © 2002-2020 脚本教程网 版权所有