濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > VBS基礎(chǔ)篇 - wscript 對(duì)象詳解

VBS基礎(chǔ)篇 - wscript 對(duì)象詳解

熱門標(biāo)簽:百度地圖標(biāo)注點(diǎn)距離代碼 神行者美術(shù)館地圖標(biāo)注 哪里有便宜的地圖標(biāo)注公司 齊齊哈爾高德地圖標(biāo)注店 除了地圖標(biāo)注還有這種生意嗎 地圖標(biāo)注政府哪個(gè)部門管 如何用機(jī)器人進(jìn)行電銷 東營快遞外呼系統(tǒng) 佛山真人電銷機(jī)器人廠家

一、wscript對(duì)象

描述:提供對(duì) Windows 腳本宿主對(duì)象模型根對(duì)象的訪問。
詳述:WScript 對(duì)象是 Windows 腳本宿主對(duì)象模型層次結(jié)構(gòu)的根對(duì)象。它可在任何腳本文件中使用,不需要特定的聲明。
        WScript 對(duì)象提供對(duì)以下信息的訪問命令行參數(shù), 腳本文件的名稱,宿主文件名, 宿主版本信息。
        WScript 對(duì)象可用來創(chuàng)建對(duì)象,連接對(duì)象, 與對(duì)象斷開連接, 同步事件, 以編程方式停止腳本的執(zhí)行,將信息輸出到默認(rèn)輸出設(shè)備(Windows 對(duì)話框或命令控制臺(tái))。

        WScript 對(duì)象也可用來設(shè)置腳本運(yùn)行的模式(交互模式或批處理模式)。
        就像剛才我們說的一樣,對(duì)象通過兩種其自有的特性想我們提供工具,這兩種特性分別是“屬性”和“方法”。

二、屬性

1、Arguments 屬性

描述:用于返回 Arguments 對(duì)象(這個(gè)對(duì)象我們以后會(huì)學(xué),現(xiàn)在只需要了解就行)。
語法:object.Arguments
參數(shù):object ,WScript 對(duì)象

例子:顯示本vbs文件運(yùn)行的參數(shù)

Set Arg = WScript.Arguments
For i = 0 To Arg.Count - 1
  MsgBox Arg(i)
Next

將上面這些代碼保存為vbs文件,然后將一個(gè)或者數(shù)個(gè)任意的文件拖放到這個(gè)vbs文件上面上,那么他會(huì)逐個(gè)顯示你拖放的文件。(這僅僅給出了一個(gè)實(shí)例,用到了Arguments對(duì)象,其的具體用法我們以后再了解)

2、FullName 屬性

描述:返回主機(jī)可執(zhí)行文件(CScript.exe 或 WScript.exe)的完全限定路徑。
語法:object.FullName
參數(shù):object ,WScript 對(duì)象

例子:顯示本機(jī)wscript的路徑
MsgBox wscript.fullname
在默認(rèn)的情況下會(huì)顯示"C:\WINDOWS\system32\wscript.exe"

3、Interactive 屬性

描述:設(shè)置或確定腳本模式。
語法:object.Interactive
參數(shù):object ,WScript 對(duì)象
說明:Interactive 屬性返回一個(gè)布爾值。

有批處理和交互兩種模式。在交互模式(默認(rèn)模式)下,該腳本為用戶提供交互功能。啟用對(duì) Windows 腳本宿主的輸入和輸出。該腳本可以將信息顯示在對(duì)話框中并等待用戶提供反饋。在批處理模式下,不支持這種類型的用戶交互,所有對(duì) WSH 的輸入和輸出被禁用。還可以使用 Windows 腳本宿主命令行開關(guān) / / I(對(duì)于交互式)和 / / B(對(duì)于批處理模式)來設(shè)置腳本模式。

例子:顯示本機(jī)的腳本模式
MsgBox WScript.Interactive

4、Name 屬性
描述:返回 WScript 對(duì)象(主機(jī)可執(zhí)行文件)的名稱。
語法:object.Name
參數(shù):object ,WScript 對(duì)象
例子:
MsgBox WScript.name

5、Path 屬性

描述:返回包含主機(jī)可執(zhí)行文件(CScript.exe 或 WScript.exe)的路徑名稱
語法:object.Path
參數(shù):object ,WScript 對(duì)象
例子:
MsgBox WScript.Path
如果你的wscript.exe是在”C: \ WINDOWS \ system32 \ wscript.exe“那么本屬性會(huì)顯示”C: \ WINDOWS \ system32“

6、ScriptFullName 屬性

描述:返回當(dāng)前運(yùn)行腳本的完整路徑。
語法:object.ScriptFullName
參數(shù):object ,WScript 對(duì)象
例子:顯示本vbs的完整路徑
MsgBox WScript.ScriptFullName

神奇吧,這個(gè)vbs竟然知道他自己的名字。

7、ScriptName 屬性

描述:返回當(dāng)前運(yùn)行腳本的文件名。
語法:object.ScriptName
參數(shù):object ,WScript 對(duì)象
說明:剛才我們知道了用ScriptFullName可以獲取vbs文件自身的完整路徑,加入你只想要這個(gè)文件的名字改怎么辦?看例子。
例子:顯示本VBS文件的名字
MsgBox WScript.ScriptName
怎么樣?看到了嗎?

8、Version 屬性

描述:返回 Windows 腳本宿主的版本。
語法:object.Version
參數(shù):object ,WScript 對(duì)象
例子:顯示本機(jī)腳本宿主版本
MsgBox WScript.version

三、方法

1、CreateObject方法

描述:創(chuàng)建一個(gè)對(duì)象
語法:CreateObject(appname.objecttype,[servername])
解釋:appname 必需的,Variant(字符串)。提供該對(duì)象的應(yīng)用程序名。
        objecttype 必需的;Variant(字符串)。待創(chuàng)建對(duì)象的類型或類。
        servername 可選的; Variant (String). 要在其上創(chuàng)建對(duì)象的網(wǎng)絡(luò)服務(wù)器名稱。
說明:要?jiǎng)?chuàng)建 ActiveX 對(duì)象,只需將 CreateObject 返回的對(duì)象賦給一個(gè)對(duì)象變量:
   Set ExcelSheet = CreateObject("Excel.Sheet")'的引用。
每個(gè)支持自動(dòng)化的應(yīng)用程序都至少提供一種對(duì)象類型。

例如,一個(gè)字處理應(yīng)用程序可能會(huì)提供 Application 對(duì)象,Document 對(duì)象,以及 Toolbar 對(duì)象。要?jiǎng)?chuàng)建 ActiveX 對(duì)象,只需將 CreateObject 返回的對(duì)象賦給一個(gè)對(duì)象變量:

Dim ExcelSheet As Object'聲明一個(gè)對(duì)象變量來存放該對(duì)象
Set ExcelSheet = CreateObject("Excel.Sheet")
ExcelSheet.Application.Visible = True '設(shè)置 Application 對(duì)象使 Excel 可見
ExcelSheet.Cells(1, 1).Value = "This is column A, row 1"'在表格的第一個(gè)單元中寫些文本
ExcelSheet.SaveAs "C:\ TEST.xls"'將該表格保存到 C:\test.xls 目錄
ExcelSheet.Application.Quit'使用應(yīng)用程序?qū)ο蟮?Quit 方法關(guān)閉 Excel。
Set ExcelSheet = Nothing'釋放該對(duì)象變量

上述代碼將啟動(dòng)該應(yīng)用程序創(chuàng)建該對(duì)象,在本例中就是創(chuàng)建一個(gè) Microsoft Excel 電子數(shù)據(jù)表。對(duì)象創(chuàng)建后,就可以在代碼中使用自定義的對(duì)象變量來引用該對(duì)象。在下面的示例中,可以使用對(duì)象變量 ExcelSheet 來訪問新建對(duì)象的屬性和方法,以及訪問 Microsoft Excel 的其它對(duì)象,包括應(yīng)用程序?qū)ο蠛蛦卧窦稀?/p>

2、GetObject方法

描述:從文件中檢索一個(gè) Automation 對(duì)象, 或檢索strProgID 參數(shù)所指定的對(duì)象
語法:object.GetObject(strPathname [,strProgID], [strPrefix])
參數(shù):object必選項(xiàng)。WScript 對(duì)象。
        strPathname必選項(xiàng)。包含要獲取的對(duì)象的完整路徑和名稱。
        strProgID可選項(xiàng)。表示對(duì)象的程序標(biāo)識(shí)符(ProgID)的字符串。
        strPrefix可選項(xiàng)。如果指定了參數(shù) strPrefix,Windows 腳本宿 主將在創(chuàng)建對(duì)象之后把對(duì)象的輸出接口與腳本文件連接起來。在對(duì)象中觸發(fā)事件時(shí),Windows 腳本宿主將調(diào)用一個(gè)子例程,其名稱包括 strPrefix 和事件的名稱。

例如,如果 strPrefix 為 "MYOBJ_",對(duì)象產(chǎn)生的事件為 "OnBegin,",那么 Windows 腳本宿主將調(diào)用腳本中的 "MYOBJ_OnBegin" 子例程。

說明:如果當(dāng)前存在對(duì)象的實(shí)例或者希望使用已經(jīng)被裝載的文件創(chuàng)建對(duì)象,可使用 GetObject 方法。如果當(dāng)前不存在實(shí)例,而且不希望從已經(jīng)裝載的文件中啟動(dòng)對(duì)象,請(qǐng)使用 CreateObject 方法。

如果一個(gè)對(duì)象將自己注冊(cè)為單實(shí)例對(duì)象(例如,Microsoft Word 7.0 中的 Word.Basic 對(duì)象),那么無論執(zhí)行 CreateObject 多少次也只能創(chuàng)建對(duì)象的一個(gè)實(shí)例。此外,對(duì)于單實(shí)例的對(duì)象,如果用零長(zhǎng)度的字符串語法("")調(diào)用,GetObject 總是返回同樣的實(shí)例,而且如果省略路徑參數(shù)將導(dǎo)致錯(cuò)誤。使用 GetObject 不能獲得對(duì) Visual Basic 4.0 以及以前版本創(chuàng)建的 Microsoft Visual Basic(R)類的引用。

GetObject 適用于所有的 COM 類,不受創(chuàng)建對(duì)象所用語言的限制。

示例:在執(zhí)行下列代碼時(shí),與指定的 strPathname 相關(guān)聯(lián)的應(yīng)用程序被啟動(dòng),指定文件中的對(duì)象被激活。 如果 strPathname 是一個(gè)零長(zhǎng)度的字符串 (""), GetObject 將返回指定類型的新對(duì)象實(shí)例。如果 strPathname 參數(shù)完全被省略,GetObject 將返回指定類型的當(dāng)前活動(dòng)對(duì)象。如果不存在指定類型的對(duì)象,將發(fā)生錯(cuò)誤。

Dim MyObject As Object
Set MyObject = GetObject("C:\CAD\SCHEMA.CAD")
MyApp = MyObject.Application

某些應(yīng)用程序允許激活一個(gè)文件的某些部分。如果要這樣做,需要在文件名后添加一個(gè)驚嘆號(hào) (!),然后跟一個(gè)字符串,標(biāo)識(shí)出文件中希望被激活的部分。關(guān)于如何創(chuàng)建該字符串的信息,請(qǐng)參閱創(chuàng)建對(duì)象的應(yīng)用程序的有關(guān)文檔。

例如,在一個(gè)繪圖應(yīng)用程序中,文件中存儲(chǔ)的一幅圖可能包含多層??梢允褂孟旅娴拇a激活繪圖文件中稱為 schema.cad 的一層:

Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")
如果不指定對(duì)象的類,COM 將根據(jù)所提供的文件名來確定要啟動(dòng)的應(yīng)用程序和要激活的對(duì)象。但是,某些文件可能支持多個(gè)對(duì)象類。例如,一幅圖紙可能支持三種不同類型的對(duì)象:一個(gè)應(yīng)用程序?qū)ο?,一個(gè)繪圖對(duì)象,以及一個(gè)工具欄對(duì)象,它們都是同一個(gè)文件的組成部分。

在下例中,F(xiàn)IGMENT 是一個(gè)繪圖應(yīng)用程序的名稱,DRAWING 是它支持的對(duì)象類型之一。

Dim MyObject As Object
Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING") 

3、Quit 方法

描述:退出執(zhí)行,返回指定的錯(cuò)誤代碼。
語法:object.Quit [intErrorCode]
解釋:object 必選項(xiàng)。 WScript 對(duì)象。
        intErrorCode可選項(xiàng)。如果包含此參數(shù),WScript 將把它作為進(jìn)程終止碼返回。如果省略了 intErrorCode,WScript 將返回零 (0) 作為進(jìn)程終止碼。
例子:
下例退出執(zhí)行并返回錯(cuò)誤代碼 1:

WScript.Quit
 
4、Sleep 方法

描述:使腳本進(jìn)程在指定的毫秒數(shù)內(nèi)處于非活動(dòng)狀態(tài),然后繼續(xù)執(zhí)行。
語法:object.Sleep(intTime)
參數(shù):object必選項(xiàng)。WScript 對(duì)象。
         intTime腳本進(jìn)程在非活動(dòng)狀態(tài)的時(shí)間長(zhǎng)度,以毫秒為單位。
說明:在睡眠狀態(tài)下,腳本將繼續(xù)執(zhí)行所處理的事件。如果腳本引擎超時(shí)或被中斷,睡眠將立即結(jié)束。
例子:

wscript.sleep(3000)
Set apprun = CreateObject("wscript.shell")
apprun.run "%windir%\notepad.exe"

此例子將會(huì)延遲3秒啟動(dòng)記事本。

5、timeout 方法

描述:設(shè)置腳本的生存時(shí)間
語法:wscript.timeout
例子:

wscript.timeout = 10
MsgBox "hello"

6、Echo 方法

描述:將輸出發(fā)送到對(duì)話框或控制臺(tái)。
語法:object.Echo [Arg1] [,Arg2] [,Arg3] ...
參數(shù):object必選項(xiàng)。WScript 對(duì)象。
        Arg1, Arg2, Arg3 ...所顯示的項(xiàng)的列表。
說明:如果宿主為 WScript.exe,本方法將把輸出顯示在對(duì)話框中;如果宿主為 CScript.exe,結(jié)果將顯示在控制臺(tái)上。每一項(xiàng)將被一個(gè)空格隔開。 在 CScript.exe 下,輸出的末尾被加上換行符。如果未提供任何項(xiàng),顯示的將是空行。
例子:

Set fso = CreateObject("scripting.filesystemobject")
  Set f = fso.OpenTextFile("c:\test.txt")
wscript.echo f.ReadAll

將會(huì)顯示這個(gè)文件里面的所有內(nèi)容。這么看來,他的功能跟msgbox一樣,不過不如他強(qiáng)大。

7、ConnectObject 方法

描述:將一個(gè)對(duì)象事件源連接到具有給定前綴的函數(shù)。
語法:object.ConnectObject strObject, strPrefix
參數(shù):object必選項(xiàng)。WScript 對(duì)象。
        strObject要連接的對(duì)象的名稱。
        strPrefix事件函數(shù)的前綴。
說明:
對(duì)象必須能夠枚舉自己類的事件集合。

例子:下例實(shí)例化了一個(gè)假想的對(duì)象,并將其連接到腳本文件。然后腳本調(diào)用該對(duì)象的 "SomeMethod" 方法。如果對(duì)象中發(fā)生了名為 "Event"的事件,將調(diào)用 MyEvent_Event 子例程。

Set MyObject = WScript.CreateObject("SomeObject")
MyObject.SomeMethod
WScript.ConnectObject MyObject, "MyEvent"
Sub MyEvent_Event(strName)
  WScript.Echo strName
End Sub
WScript.DisconnectObject MyObject

8、DisconnectObject 方法

描述:將原先與 Windows 腳本宿主連接的對(duì)象斷開。
語法:object.DisconnectObject obj
參數(shù):object必選項(xiàng)。WScript 對(duì)象。
   obj要斷開連接的對(duì)象的名稱。
說明:
如果所指定的對(duì)象尚未被連接到 Windows 腳本宿主,則此方法不起任何作用。
例子:
下例創(chuàng)建了一個(gè)假想的對(duì)象并將其連接到腳本文件。然后腳本調(diào)用對(duì)象的 "SomeMethod" 方法。如果對(duì)象中發(fā)生名為 "Event" 的錯(cuò)誤,MyEvent_Event 子例程將被調(diào)用。

Set MyObject = WScript.CreateObject("SomeObject", "MyEvent")
MyObject.SomeMethod
Sub MyEvent_Event(strName)
  WScript.Echo strName
End Sub
WScript.DisconnectObject MyObject

這篇文章就介紹到這了,需要的朋友可以參考一下。

標(biāo)簽:銅川 鶴壁 文山 西安 湖州 邢臺(tái) 四平

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《VBS基礎(chǔ)篇 - wscript 對(duì)象詳解》,本文關(guān)鍵詞  VBS,基礎(chǔ),篇,wscript,對(duì)象,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《VBS基礎(chǔ)篇 - wscript 對(duì)象詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于VBS基礎(chǔ)篇 - wscript 對(duì)象詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    本溪市| 南昌市| 梅州市| 庆云县| 闽清县| 穆棱市| 新昌县| 图们市| 临洮县| 台山市| 北辰区| 泰和县| 富民县| 沿河| 乌兰浩特市| 繁峙县| 会同县| 岑溪市| 金平| 建昌县| 西乌珠穆沁旗| 汶川县| 萨迦县| 祁连县| 荔波县| 聂拉木县| 盐津县| 利津县| 乐平市| 寿宁县| 乌兰县| 佛冈县| 磐安县| 肃宁县| 红安县| 英吉沙县| 晋江市| 云林县| 长宁区| 新龙县| 五家渠市|