Windows Script Host之用vbs实现[浏览文件夹]功能 |
************************************************ File:Dialog.vbs (WSH sample in VBScript) Author:(c) G. Born Using the shell dialog box to select a folder ************************************************ Option Explicit Flags for the options parameter Const BIF_returnonlyfsdirs = &H0001 Const BIF_dontgobelowdomain= &H0002 Const BIF_statustext = &H0004 Const BIF_returnfsancestors= &H0008 Const BIF_editbox= &H0010 Const BIF_validate = &H0020 Const BIF_browseforcomputer= &H1000 Const BIF_browseforprinter = &H2000 Const BIF_browseincludefiles = &H4000 Dim wsh, objDlg, objF Get Application object of the Windows shell. Set objDlg = WScript.CreateObject("Shell.Application") Use the BrowseForFolder method. For instance: Set objF = objDlg.BrowseForFolder _ (&H0, "Select the folder to copy", &H10, "C:\Born") Set objF = objDlg.BrowseForFolder (&H0, _ "Select the folder to copy", _ BIF_editbox + BIF_returnonlyfsdirs) Here we use the first method to detect the result. If IsValue(objF) Then MsgBox "Selected folder: " & objF.Title Else MsgBox "Canceled" End If Here we use TypeName to detect the result. If InStr(1, TypeName(objF), "Folder") > 0 Then MsgBox "Selected folder: " & objF.Title Else MsgBox "Canceled" End If Function IsValue(obj) Check whether the value has been returned. Dim tmp On Error Resume Next tmp = " " & obj If Err <> 0 Then IsValue = False Else IsValue = True End If On Error GoTo 0 End Function *** End |