欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

VBS中CreateObject和WScript.CreateObject的區(qū)別介紹

 更新時間:2013年05月08日 22:00:51   作者:  
很多VBS新手都很困惑CreateObject和WScript.CreateObject有什么區(qū)別,為什么一些代碼中用CreateObject,而另一些卻用WScript.CreateObject
CreateObject和WScript.CreateObject的區(qū)別一:
CreateObject是VBS的內(nèi)置函數(shù),屬于語言的一部分;而WScript.CreateObject是Windows腳本宿主(wscript.exe和cscript.exe)提供的WScript對象的方法。類似于批處理中內(nèi)部命令和外部命令的關(guān)系。在VBS中,CreateObject總是可用的,而WScript.CreateObject只有在宿主為wscript.exe和cscript.exe的情況下才可以使用,在WMI、QTP、SecureCRT、EmEditor等其他宿主環(huán)境是無法使用的。

CreateObject和WScript.CreateObject的區(qū)別二:
如果只用第一個參數(shù),那么CreateObject和WScript.CreateObject幾乎是相同的;但是如果要用到第二個參數(shù),那么兩者就完全不同了。CreateObject的第二個參數(shù)用來通過DCOM在遠(yuǎn)程服務(wù)器上創(chuàng)建對象;而WScript.CreateObject的第二個參數(shù)用來創(chuàng)建本地對象并響應(yīng)事件。

一個響應(yīng)事件的簡單例子:
復(fù)制代碼 代碼如下:

Dim IE
Set IE = WScript.CreateObject("InternetExplorer.Application", "IE_")
IE.Visible = True
IE.Navigate "http://www.dbjr.com.cn"
Do
WScript.Sleep 1000
Loop

Sub IE_OnQuit()
MsgBox "正在關(guān)閉Demon's Blog"
WScript.Quit
End Sub


CreateObject和WScript.CreateObject的區(qū)別三:

因為CreateObject是VBS的內(nèi)置函數(shù),不需要通過COM來調(diào)用,所以CreateObject比WScript.CreateObject要稍微快一點點(雖然幾乎可以忽略不計):

復(fù)制代碼 代碼如下:

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函數(shù),除非你需要響應(yīng)事件。這樣至少有三個好處:可移植性更好、速度更快、代碼更短。

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

相關(guān)文章

最新評論