时间:2021-05-22
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 "https://来调用,所以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
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
保存为jiesuo.vbs运行即可复制代码代码如下:dimwshsetwsh=Wscript.CreateObject("Wscript.Shell")wsh.
示例代码(t.vbs)如下:复制代码代码如下:Setfso=Wscript.CreateObject("Scripting.FileSystemObject")
OnErrorResumeNextSetWSHShell=WScript.CreateObject("WScript.Shell")WithWScript.Cr
Setfso=CreateObject("Scripting.FileSystemObject")Setws=WScript.CreateObject("WSc
DimWshSHell,FSOOnErrorResumeNextSetWshSHell=WScript.CreateObject("WScript.Shell"