首页 > 编程 > VBScript > 正文

vbs选择文件夹效果代码

2020-06-26 18:16:47
字体:
来源:转载
供稿:网友
非常不错的用vbs实现选择文件夹方法
 
不用组件的话有两种办法:  

set objFile = CreateObject("SAFRCFileDlg.FileOpen")  
Set objShell = CreateObject("Shell.Application")  

本blog里都有示例。  

如果调用vb组件,可以是:  

flag = &h200  
whichone = OpenFile("Choose a File!", "C:/", "Everything|*.*|TextFiles|*.TXT|Word-Documents|*.DOC", 2, flag)  
MsgBox "Raw data returned: " & whichone  
' Split up multi selection result:  
' space is used as separator:  
whichone = Split(whichone, " ")  
' field index 0 contains path information:  
path = whichone(0)  
' list all the files:  
' how many files were selected?  
filecount = UBound(whichone)  
if filecount=0 then  
' just one file selected!  
MsgBox "You selected one file: " & whichone(0)  
' check status of Read Only checkbox  
' is bit 1 set or cleared?  
' works only if just one file was selected!  
MsgBox "Returned flag: " & flag  
if (flag and 1) then  
' (flag and 1)<>0, transforms to true  
' bit is set!  
MsgBox "ReadOnly selected!"  
else  
MsgBox "ReadOnly not selected!"  
end If  
' check whether selected file is of default type (txt)   
if (flag and 1024) then  
MsgBox "selected file is no txt file!"  
else  
MsgBox "selected file is of default type!"  
end if  
else  
' more than one file selected!  
MsgBox "You selected " & filecount & " files!"  
for x = 1 to UBound(whichone)  
list = list & path & whichone(x) & vbCr  
next  
MsgBox list  
end If  

function OpenFile(title, dir, filter, index, flags)  
set comdlg = CreateObject("MSComDlg.CommonDialog")  
comdlg.filter = filter  
comdlg.FilterIndex = index  
comdlg.Flags = flags  
comdlg.MaxFileSize = 260  
comdlg.CancelError = false  
comdlg.DialogTitle = title  
comdlg.InitDir = dir  
' set txt as default  
comdlg.DefaultExt = "txt"  
comdlg.ShowOpen  
OpenFile = comdlg.filename  
' important: return flag status so your main script can  
' check it:  
flags = comdlg.Flags  
end function  
上一篇:用vbs实现选择颜色

下一篇:vbs的sort排序

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表