日期:2013-07-12  浏览次数:20990 次

'************************************************
' 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

'保存为xxx.vbs,双击即可运行