婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > VBS 顯示“選擇文件或文件夾”對話框的代碼

VBS 顯示“選擇文件或文件夾”對話框的代碼

熱門標簽:陜西高頻外呼回撥系統(tǒng)哪家好 新密防封卡外呼系統(tǒng)違法嗎 外呼營銷下單系統(tǒng) 加盟電銷機器人好的品牌 百度地圖標注怎么卸載 辦理膠州400電話財稅 前鋒辦理400電話申請 海外美發(fā)店地圖標注 打電話的外呼系統(tǒng)貴不貴

一、顯示“選擇文件”的對話框

問: 嗨,Scripting Guy!有沒有什么方法可以讓我使用腳本向用戶顯示一個對話框,供用戶選擇文件使用?

答:您好。|
  如果您使用的是 Windows 2000,我們不知道實現(xiàn)此操作的方法,至少操作系統(tǒng)中沒有內置這樣的方法。
  但如果您使用的是 Windows XP,情況就不同了。在 Windows XP 上,您可以使用"UserAccounts.CommonDialog” 對象向用戶顯示一個標準的“文件打開”對話框。

      可以用類似以下代碼的腳本:

復制代碼 代碼如下:

Set objDialog = CreateObject("UserAccounts.CommonDialog")

objDialog.Filter = "All Files|*.*"
objDialog.InitialDir = "C:\"
intResult = objDialog.ShowOpen
If intResult = 0 Then
Wscript.Quit
Else
Wscript.Echo objDialog.FileName
End If

      這是一個小腳本,所以讓我們逐行進行解釋吧:

1)我們首先創(chuàng)建一個對 UserAccounts.CommonDialog 對象的對象引用(名為“objDialog”)。

2)接著,我們設置對話框的“篩選”屬性。我們要顯示所有文件,所以我們將篩選設置成這樣:
          objDialog.Filter = "All Files|*.*"

     假如我們只想顯示文本文件,那該怎么辦?在這種情況下,我們將使用以下篩選:
          objDialog.Filter = "Text Files|*.txt"

      您也許能夠看出它是如何運行的:我們?yōu)槲募愋吞峁┱f明 (Text Files),然后插入一個豎線分隔符 (|),最后使用標準的通配符來指示所有 .txt 文件 (*.txt)。
      是不是想默認顯示 .txt 文件,然后為用戶提供查看所有文件的選項?那么可以使用以下代碼:
          objDialog.Filter = "Text Files|*.txt|All Files|*.*"

      試一試,您就明白我們的意思了。

3)然后,我們指定默認文件夾。
      默認情況下,我們希望對話框顯示位于驅動器 C 的根文件夾中的文件,所以我們這樣設置“InitialDir”屬性:
          objDialog.InitialDir = "C:\"

      希望顯示 C:\Windows 文件夾中的文件嗎?那么可以使用以下代碼:
          objDialog.InitialDir = "C:\Windows"

      不必擔心:這是一個真正的“文件打開”對話框,所以您可以隨意單擊,并且可以隨時停下來。您從 C:\Windows 開始并不意味著您只能打開該文件夾中的文件。

4)最后,我們使用下面這行代碼顯示對話框:

          intResult = objDialog.ShowOpen

  現(xiàn)在,我們只需坐下來,等待用戶選擇文件并單擊“確定”(或者等待用戶單擊“取消”)。
  如果用戶單擊“取消”,則變量 intResult 將被設置為 0。在我們的腳本中,我們檢查 intResult 的值,如果是 0,我們將只需要使用 Wscript.Quit 來終止此腳本。
  但是如果用戶實際上選擇了文件并單擊了“確定”,那該怎么辦?在這種情況下,intResult 將被設置為 -1,“FileDialog”屬性將被設置為所選文件的路徑名。我們的腳本只回顯路徑名,這意味著我們將得到類似以下內容的輸出:

          C:\WINDOWS\Prairie Wind.bmp

  不用說,您并不局限于只回顯文件路徑。實際上,您可以使用 WMI、FileSystemObject 或一些其他技術來綁定該文件,然后對其執(zhí)行刪除、復制、壓縮或檢索文件屬性等操作 — 您對文件能夠執(zhí)行的操作差不多都可以對它執(zhí)行。

  但無論如何,您都需要使用腳本。

  順便說一句,使用此方法,您一次只能選擇一個文件,而不能按住“Ctrl”鍵選擇多個文件。有一種方法可以選擇多個文件,至少在 XP 計算機上可以,但是我們只能將此問題留到以后的專欄中討論了。

 

二、顯示“選擇文件夾”對話框?

問:嗨,腳本專家!在前面的專欄中,您為我們展示了如何給用戶顯示對話框,使他們能夠選擇文件。存在給用戶顯示一個對話框,只讓他們選擇文件夾的辦法嗎?

答:您好。

  實際上,我們有 BrowseForFolder 方法,它是 Windows Shell 對象的一部分。

  讓我給您一個腳本示例,然后講一下它的工作方式:

   

復制代碼 代碼如下:

 Const WINDOW_HANDLE = 0
    Const OPTIONS = 0
    Set objShell = CreateObject("Shell.Application")
    Set objFolder = objShell.BrowseForFolder _
    (WINDOW_HANDLE, "Select a folder:", OPTIONS, "C:\")
    If objFolder Is Nothing Then
    Wscript.Quit
    End If
    Set objFolderItem = objFolder.Self
    objPath = objFolderItem.Path
    Wscript.Echo objPath

  首先,我們定義一對常量:WINDOW_HANDLE 和 OPTIONS。
  WINDOW_HANDLE 常量表示需要指定給要顯示的對話框的數(shù)字 ID;對于腳本,此值應始終為 0。
  將 OPTIONS 設置為 0 表示我們將顯示一個非常簡單的對話框,一個限制用戶只從文件夾列表進行選擇的對話框。或者,我們可以將 OPTIONS 設置成 H10。這種情況下,我們的對話框將包括文本區(qū),用戶可以在此鍵入文件夾路徑。

  定義完常量后,我們創(chuàng)建 Shell.Application 對象的實例,然后使用以下代碼顯示“瀏覽文件夾”對話框:
    Set objFolder = objShell.BrowseForFolder _
    (WINDOW_HANDLE, "Select a folder:", OPTIONS, "C:\")

  您可以看到,我們只是調用 BrowseForFolder 方法,傳遞了四個參數(shù):
    WINDOW_HANDLE,正如我們所說明的,是分配給對話框窗口的數(shù)字 ID。
    文本字符串 Select a folder:,將作為顯示在對話框中的說明性消息。
    OPTIONS,表示構造對話框所用選項的常量。
    C:\,將作為對話框的根文件夾。對話框將打開 C:\,但不允許您選擇樹視圖中較上方的文件位置(例如,您不能選擇“我的電腦”)。如果將根文件夾設置為 C:\Scripts,則將只允許用戶選擇文件夾 C:\Scripts 及其所有子文件夾。

  該代碼將產生一個類似屏幕上顯示的對話框。
  (您是否有疑問,是的,您以前曾見過此對話框。許多 Windows 應用程序使用同樣的方法,同樣的對話框。)

  此時,我們的腳本暫停,等候用戶選擇文件夾并單擊確定,或者單擊取消。當用戶進行了這兩個操作之一,對話框將被清除,操作將存儲在對象引用 objFolder 中。

  那么我們如何知道用戶是否選擇了一個文件夾并單擊了確定,或者只單擊了取消?以下代碼塊就用來解決這個問題:
    If objFolder Is Nothing Then
    Wscript.Quit
    End If

  該代碼檢查我們的對象引用 (objFolder) 是否等于一個真正對象(這是關鍵字 Nothing 的用途)。如果 objFolder 等于 Nothing,則意味著用戶單擊了取消;如果是那樣的話,我們只簡單用 Wscript.Quit 退出腳本。如果 objFolder 不等于 Nothing,那么 objFolder 一定指向一個真正的對象;于是腳本將繼續(xù)運行。

  由于 Shell 對象的特點,以下兩行代碼是必要的:
    Set objFolderItem = objFolder.Self
    objPath = objFolderItem.Path

  當用戶選擇文件夾并單擊確定,他們將得到 Shell Folder 對象的實例。然而,由于某些原因您不能使用 Shell Folder 對象;如果我們要檢索選定文件夾的路徑,我們得用 FolderItem 對象來代替。(為什么是這樣呢?我們不知道。)于是,我們的第一行代碼使用 Self 方法返回一個 FolderItem 對象,該對象正與我們的 Folder 對象相同。第二行代碼將到此 FolderItem 對象的路徑存儲到變量 objPath 中。看上去有點笨拙,但它確實能夠工作。

  最后我們回顯到選定文件夾的路徑,到此工作既已完成。

  正如我們說明的,示例對話框使用 C:\ 作為根文件夾,不允許您選擇位于計算機其他地方的文件夾。有時這樣做很好;這樣會迫使用戶從一組特定文件夾中進行選擇。但有時,想使用戶能夠選擇文件系統(tǒng)中任意位置的文件夾。這可能嗎?

  當然可以。我們不詳述這個修改后的腳本,但該腳本會將“我的電腦”設置為根文件夾:
    

復制代碼 代碼如下:

Const MY_COMPUTER = H11
    Const WINDOW_HANDLE = 0
    Const OPTIONS = 0
    Set objShell = CreateObject("Shell.Application")
    Set objFolder = objShell.Namespace(MY_COMPUTER)
    Set objFolderItem = objFolder.Self
    strPath = objFolderItem.Path
    Set objShell = CreateObject("Shell.Application")
    Set objFolder = objShell.BrowseForFolder _
    (WINDOW_HANDLE, "Select a folder:", OPTIONS, strPath)
    If objFolder Is Nothing Then
    Wscript.Quit
    End If
    Set objFolderItem = objFolder.Self
    objPath = objFolderItem.Path
    Wscript.Echo objPath

  如您所料,所得到的對話框提供了很多選擇。這正是您所需要的。

標簽:梅州 阜陽 咸陽 伊春 武威 四平 牡丹江 河南

巨人網(wǎng)絡通訊聲明:本文標題《VBS 顯示“選擇文件或文件夾”對話框的代碼》,本文關鍵詞  VBS,顯示,選擇,文件,或,文件夾,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《VBS 顯示“選擇文件或文件夾”對話框的代碼》相關的同類信息!
  • 本頁收集關于VBS 顯示“選擇文件或文件夾”對話框的代碼的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日韩视频永久免费| 在线播放91灌醉迷j高跟美女| 成人禁用看黄a在线| 欧美一卡二卡在线| 日本欧美一区二区在线观看| 欧美午夜在线一二页| 国产精品美女久久久久aⅴ | 555www色欧美视频| 亚洲国产成人tv| 欧美视频一区二区三区在线观看| 一区二区三区免费网站| 91麻豆精品视频| 亚洲成人动漫在线免费观看| 欧美三区在线观看| 香蕉加勒比综合久久| 欧美色偷偷大香| 免费欧美高清视频| 精品乱人伦小说| 国产不卡视频一区| 一区二区三区久久久| 欧美一区日本一区韩国一区| 亚洲国产三级在线| 欧美成人精精品一区二区频| 首页亚洲欧美制服丝腿| 国产亚洲精品资源在线26u| 成人av电影在线网| 午夜视频在线观看一区| 久久网站最新地址| 91视频在线观看免费| 婷婷国产在线综合| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 亚洲自拍偷拍九九九| 欧美性xxxxxx少妇| 免费久久99精品国产| 久久久久久久久免费| 成人免费av资源| 中文字幕中文乱码欧美一区二区| 一本色道久久综合亚洲aⅴ蜜桃| 国产精品丝袜久久久久久app| 一本一本久久a久久精品综合麻豆| 在线一区二区三区四区| 免费不卡在线观看| 中文字幕一区二区三| 色8久久人人97超碰香蕉987| 午夜精品福利在线| 国产精品视频第一区| 欧美日韩一区高清| 一本色道久久综合狠狠躁的推荐 | 中文字幕av一区二区三区高| 欧美网站一区二区| 国产成a人亚洲| 视频一区二区三区中文字幕| 国产精品三级久久久久三级| 日韩免费性生活视频播放| 亚洲一区二区三区三| 国产精品三级av| 精品国产免费人成电影在线观看四季| 欧美日韩一区二区三区在线 | 日本强好片久久久久久aaa| 日韩一区在线免费观看| 国产精品天美传媒| 日韩欧美电影在线| 欧美久久一区二区| 欧美日韩国产三级| 欧美性一区二区| 欧美亚洲综合久久| 91麻豆高清视频| 色综合久久天天综合网| 91伊人久久大香线蕉| www.欧美.com| 99久久er热在这里只有精品15| 久久se精品一区二区| 日韩有码一区二区三区| 日韩精品三区四区| 欧美bbbbb| 精品在线观看免费| 国产大片一区二区| 成人丝袜视频网| 色综合视频在线观看| 色88888久久久久久影院按摩| 97久久精品人人爽人人爽蜜臀| 91视频www| 欧美最猛性xxxxx直播| 色婷婷激情久久| 欧美精品vⅰdeose4hd| 日韩亚洲国产中文字幕欧美| 欧美videos大乳护士334| 欧美r级在线观看| 国产亚洲一区二区三区| 成人欧美一区二区三区1314 | 久久人人爽人人爽| 成人免费在线视频| 亚洲国产精品久久人人爱蜜臀| 亚洲午夜在线电影| 国内精品在线播放| www.色综合.com| 欧美亚洲尤物久久| 26uuu精品一区二区| 国产精品久久久久久妇女6080| 亚洲精品视频免费看| 日韩1区2区日韩1区2区| 成人永久aaa| 欧美日韩精品电影| 久久女同互慰一区二区三区| 亚洲日本va午夜在线电影| 秋霞午夜鲁丝一区二区老狼| 国产精品99久久久久久有的能看 | 成人av在线播放网址| 色婷婷激情综合| 久久久久国产免费免费 | 亚洲综合偷拍欧美一区色| 美女mm1313爽爽久久久蜜臀| jlzzjlzz亚洲日本少妇| 欧美另类一区二区三区| 国产精品嫩草久久久久| 久久成人麻豆午夜电影| 91福利视频久久久久| 欧美精品一区二区三| 一区二区三区日韩在线观看| 国产成人精品亚洲777人妖| 91精品国产欧美一区二区| 国产精品麻豆网站| 国产在线一区二区| 日韩欧美一级在线播放| 一二三四社区欧美黄| 丁香网亚洲国际| 精品久久久久久久久久久久久久久| 亚洲欧美偷拍三级| 国产成人一区在线| 5566中文字幕一区二区电影| 亚洲一二三四在线观看| www.欧美日韩| 国产午夜精品美女毛片视频| 久久se精品一区精品二区| 欧美一区二区三区人| 亚洲国产精品视频| 在线观看视频一区二区欧美日韩| 国产精品日韩成人| 粉嫩嫩av羞羞动漫久久久| 欧美xxxx在线观看| 精品国产乱子伦一区| 亚洲v精品v日韩v欧美v专区| 91丝袜美腿高跟国产极品老师| 欧美电影免费提供在线观看| 亚洲成av人片在线观看无码| 欧美在线观看一区| 亚洲成人手机在线| 91浏览器打开| 一区二区三区**美女毛片| 欧美性猛交一区二区三区精品| 中文字幕日韩一区| 91久久一区二区| 亚洲国产综合人成综合网站| 欧美喷潮久久久xxxxx| 日韩电影一区二区三区四区| 制服丝袜亚洲网站| 极品美女销魂一区二区三区免费| 日韩精品一区二区三区视频| 韩国成人精品a∨在线观看| 久久精品一区四区| 福利一区二区在线| 亚洲综合色成人| 日韩一二三区视频| 国产成人自拍高清视频在线免费播放| 成人欧美一区二区三区1314| 欧洲av一区二区嗯嗯嗯啊| 免费在线看一区| 久久在线免费观看| 成人中文字幕电影| 日韩一区精品视频| 久久久精品蜜桃| 欧美日韩视频在线一区二区 | 亚洲一区二区在线免费看| 欧美日韩久久久| 日本美女一区二区三区| 久久色.com| 欧美三级电影在线看| 韩国精品主播一区二区在线观看| 最新国产成人在线观看| 在线不卡中文字幕| 国产成人精品一区二| 日韩av中文字幕一区二区| 欧美韩国一区二区| 日韩欧美亚洲一区二区| 99久久精品免费观看| 美女脱光内衣内裤视频久久影院| 国产精品久久久久影院亚瑟| 欧美日韩国产a| 99久久精品国产网站| 男女性色大片免费观看一区二区| 亚洲欧洲在线观看av| 精品少妇一区二区三区在线播放| 94-欧美-setu| 国产精品亚洲一区二区三区在线| 一区二区三区在线免费视频| 国产精品水嫩水嫩| 久久日韩精品一区二区五区| 欧美专区日韩专区| 不卡的看片网站| 国产乱码精品一区二区三区av|