2023年11月30日发(作者:)

VBS学习笔记(九)系统对话框

Vbs 脚本编程简明教程之使⽤系统对话框

在 VBS 脚本设计中,如果能使⽤ windows 提供的系统对话框,可以简化脚本的使⽤难度,使脚本⼈性化许多, 很少有⼈使⽤,但 VBS

并⾮不能实现这样的功能,⽅法当然还是利⽤ COM 对象。

1、ve 对象:属性有: FileName — 指定默认⽂件名; FileType — 指定⽂件扩展名;OpenFileSaveDlg — 显⽰

⽂件保存框体⽅法。

2、en 对象:FileName — 默认⽂件名属性;OpenFileOpenDlg — 显⽰打开⽂件框体⽅法。

3、Dialog 对象:Filter — 扩展名属性("vbs File|*.vbs|All Files|*.*");FilterIndex — 指定;InitialDir — 指

定默认的⽂件夹;FileName — 指定的⽂件名;Flags — 对话框的类型Showopen ⽅法

例⼀:保存⽂件

Set objDialog = Object("ve")

Set objFSO = Object("stemObject")

me = InputBox("⽂件名称:","⽂件名","Test")

pe = InputBox("⽂件类型:","类型",".txt")

intReturn = leSaveDlg

If intReturn Then

TextFile me & pe,True,True

Else

End If

注意:

1 、ve 对象仅仅是提供了⼀个⽅便⽤户选择的界⾯,本⾝并没有保存⽂件的功能,保存⽂件还需要使⽤ FSO 对象来

完成。

2、⽤ FileType 属性来指定默认的⽂件类型。

3、在调⽤ OpenFileSaveDlg ⽅法时,最好把返回值保存到⼀变量中,⽤它可以判断⽤户按下的是确定还是取消。

如果出现activex部件不能创建对象“ve”或者⽆法找到名为“ve”的automation的问题,可以尝试

着下载⽂件放到c:windowsststem32⽂件夹,然后点击“开始”“运⾏”,输⼊regsvr32 ,然后点击确定,

再看看对象能不能创建。⼤部分应该是由于C:windowssystem32⽬录中不存在造成的。()

例⼆:. 打开⽂件

Set objDialog = Object("en")

intReturn = leOpenDlg

"⽂件名称:" & me

"⽂件⼤⼩:" & ze & "字节"

注意,这⾥的打开并⾮真正的将⽂件打开

例三:⽐较复杂的打开⽂件对话框

Set objDialog = CreateObject("Dialog")

= "vbs File(*.vbs)|*.vbs"

lDir = "C:"

' = &H020 '此语句加⼊后,对话框并没有出来

tfile = en

If tfile Then

strLoadFile = me

MsgBox strLoadFile

Else

因为不能运⾏,所以,我就在⽹上搜了下解决⽅案,同样也可以弹出对话框,代码(代码来⾃)如下:

Set oIE = CreateObject("ation")

te "About:Blank"

""

Set oElement = mentById("x")

20000

其实这段代码,本⼈也只是简单理解了下,由于是初学者,所以,按照以前的⽅法,先理解性记了下,希望在后⾯能有更深的理解,⾄于请

参见博客

如果回显的全路径显⽰的是"C:fakepath"+⽂件名的形式,这是ie8下的安全设置问题。

解决⽅案:

⼯具 -> Internet选项 -> 安全 -> ⾃定义级别 -> 找到其他中的将本地⽂件上载⾄服务器时包含本地⽬录路径,选中启⽤即可。