實(shí)現(xiàn)方法如下
my-script.vbs "c:\scripts"
在文件夾路徑的兩端必須加雙引號(hào)嗎?本例中不需要。但是,如果路徑中有空格,則必須加雙引號(hào)。以下命令行將不起作用:
my-script.vbs c:\documents and settings\kmyer
只要是向腳本傳遞包含空格的參數(shù),就必須將整個(gè)參數(shù)括在雙引號(hào)內(nèi)(否則無(wú)需如此)。換句話說(shuō):
my-script.vbs "c:\documents and settings\kmyer"
這就是命令解釋程序的工作方式。
那么,我們將在這里運(yùn)行什么腳本呢?問(wèn)得好。最終是這樣一個(gè)腳本:
Set objShell = CreateObject("Wscript.Shell") strPath = Wscript.Arguments(0) strPath = "explorer.exe /e," strPath objShell.Run strPath
如同往常一樣,該腳本沒(méi)有太多內(nèi)容。我們首先創(chuàng)建 Wscript.Shell 對(duì)象的實(shí)例;它是 Windows Script Host 對(duì)象,我們用它來(lái)在另一腳本內(nèi)運(yùn)行腳本或可執(zhí)行文件。然后我們獲取提供給腳本的第一個(gè)參數(shù) (c:\scripts) 并將其存儲(chǔ)到名為 strPath 的變量中:
strPath = Wscript.Arguments(0)
對(duì)這些應(yīng)該沒(méi)有什么疑問(wèn)吧?稍后,我們將使用 Run 方法啟動(dòng) Windows 資源管理器。不過(guò),在此之前,我們應(yīng)注意到 WSH 中的 Run 方法同 Run 對(duì)話框基本上是一回事。如果想使用 Run 對(duì)話框啟動(dòng) Windows 資源管理器(焦點(diǎn)定位在 C:\Scripts 文件夾上),需要鍵入以下代碼:
explorer.exe /e,c:\scripts
我們發(fā)現(xiàn),以上使用的語(yǔ)法與我們用 Run 方法啟動(dòng) Windows 資源管理器所用的語(yǔ)法相同:我們只需要構(gòu)建命令,然后執(zhí)行:
strPath = "explorer.exe /e," strPath
objShell.Run strPath
在第 1 行,我們采取命令 explorer.exe /e, 并附加上文件夾路徑(該路徑存儲(chǔ)在變量 strPath 中);然后,strPath 的值將是 explorer.exe /e,c:\scripts。在第 2 行,我們調(diào)用 Run 方法,并將變量 strPath 作為所要運(yùn)行的命令傳遞。如果一切順利(就腳本編寫方面,事情總是很順利,對(duì)吧?),Windows 資源管理器將會(huì)打開且焦點(diǎn)定位在 C:\Scripts 上:
真酷。
那么,這有何不妥嗎?沒(méi)什么,一切正常。該腳本的唯一弊端是需要您鍵入文件夾的完整路徑;當(dāng)您試圖打開文件夾 C:\Documents and Settings\Default User\Application Data\Microsoft\SystemCertificates\My\Certificates 時(shí),這就會(huì)成為一個(gè)問(wèn)題。但是由于系統(tǒng)管理員總是堅(jiān)持使用命令行,我們又必須做何種選擇呢?
好吧,您總是可以嘗試一下 GUI 方法(不用擔(dān)心,我們不會(huì)告訴任何人的):
Const WINDOW_HANDLE = 0 Const NO_OPTIONS = 0 Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.BrowseForFolder _ (WINDOW_HANDLE, "Select a folder:", NO_OPTIONS) Set objFolderItem = objFolder.Self strPath = objFolderItem.Path objShell.Explore strPath
本腳本根本不需要您做任何鍵入。您只需啟動(dòng)該腳本,然后它會(huì)顯示瀏覽文件夾對(duì)話框:
選擇文件夾,單擊確定,這樣就可以了。
那么,此腳本是如何工作的?好吧,我們先定義一對(duì)常量:WINDOW_HANDLE 和 NO_OPTIONS。WINDOW_HANDLE 是 BrowseForFolder 方法所需的常量,NO_OPTIONS 則只是通知腳本我們要顯示標(biāo)準(zhǔn)的“瀏覽文件夾”對(duì)話框。之后,我們創(chuàng)建 Shell.Application 對(duì)象的實(shí)例,然后使用下面這行代碼來(lái)顯示該對(duì)話框:
Set objFolder = objShell.BrowseForFolder _
(WINDOW_HANDLE, "Select a folder:", NO_OPTIONS)
在對(duì)話框顯示之后,它將一直等到我們選擇一個(gè)文件夾并單擊確定。然后我們使用如下兩行代碼來(lái)實(shí)現(xiàn):1) 創(chuàng)建對(duì)選定文件夾的對(duì)象引用;以及,2) 將文件夾路徑存儲(chǔ)到變量 strPath 中:
Set objFolderItem = objFolder.Self
strPath = objFolderItem.Path
我們現(xiàn)在只需調(diào)用專用于打開 Windows 資源管理器的 Explore 方法。通過(guò)將變量 strPath 作為單獨(dú)的參數(shù)傳遞,這樣會(huì)使得 Windows 資源瀏覽器在打開時(shí)焦點(diǎn)定位在 C:\Scripts 上:
objShell.Explore strPath
這說(shuō)明了什么呢?這說(shuō)明現(xiàn)在您可以使用命令提示符打開 Windows 資源管理器,也可以使用 GUI 打開 Windows 資源管理器,這完全取決于您。
標(biāo)簽:漳州 周口 廣安 六安 玉林 嘉興 臺(tái)灣 延安
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《用vbs實(shí)現(xiàn)在啟動(dòng) Windows 資源管理器時(shí)打開特定文件夾》,本文關(guān)鍵詞 用,vbs,實(shí),現(xiàn)在,啟動(dòng),Windows,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。