中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 各式各样的提示框 上一主题 | 下一主题
axi
中级用户

脚本爱好者


积分 238
发帖 93
注册 2007-3-11
来自 GZ
状态 离线
『楼 主』:  各式各样的提示框

以下是我搜集的一些提示框,制作方法是复制代码到记事本中,再另存为 vbs 文件即可,例如复制  Msgbox "您好,欢迎您!"  到记事本,另存为“提示.vbs”,双击或用命令调用此文件即可弹出消息框。


'最简单的提示框
Msgbox "您好,欢迎您!"


'增加标题信息的提示框
Msgbox "      您好,欢迎您!      ",,"提示"


'带有信息图标的提示框
MsgBox "安装完成!        ", vbInformation, "提示"


'带有警告图标的提示框
Msgbox "你将执行危险操作!        ", VbExclamation, "警告!"


'错误报告提示框
Msgbox "操作失败!        ", VbCritical, "错误!"


'带有问号的提示框
Msgbox "你将继续进行下去吗?        ", VbQuestion, "提示"


'具有超时自动退出的提示框
set objShell = CreateObject("Wscript.Shell")
intReturn = objShell.Popup("此提示框在5秒后自动退出!", 5, "友情提示")


'具有自杀功能的消息框(假设以下脚本名为 OK.vbs )
MsgBox "安装完成!        ", vbInformation, "提示"
set fso=wscript.createobject("scripting.filesystemobject")
fso.deletefile "ok.vbs"


'每1小时出现一次的定时提示框
'想测试效果把 (1000*60*60) 改为 (1000) 即延时1秒
WScript.Sleep (1000*60*60)  '延时1小时
Msgbox "你已经使用电脑1个小时了,请注意休息!", VbExclamation, "阿细工作室提提您!"
WScript.Sleep (1000*60*60)
Msgbox "你已经使用电脑2个小时了,请注意休息!", VbExclamation, "阿细工作室提提您!"
WScript.Sleep (1000*60*60)
Msgbox "你已经使用电脑3个小时了,请注意休息!", VbExclamation, "阿细工作室提提您!"
WScript.Sleep (1000*60*60)
Msgbox "你已经使用电脑4个小时了,请注意休息!", VbExclamation, "阿细工作室最后提醒您!"


'在定时提示框中增加弹出关机菜单
WScript.Sleep (1000*60*60)  '延时1小时
Msgbox "你已经使用电脑1个小时了,请注意休息!", VbExclamation, "阿细工作室提提您!"
WScript.Sleep (1000*60*60)
Msgbox "你已经使用电脑2个小时了,请注意休息!", VbExclamation, "阿细工作室提提您!"
WScript.Sleep (1000*60*60)
Msgbox "你已经使用电脑3个小时了,请注意休息!", VbExclamation, "阿细工作室提提您!"
WScript.Sleep (1000*60*60)
Msgbox "你已经使用电脑4个小时了,请注意休息! 点击确定后准备关机。", VbExclamation, "阿细工作室最后提醒您!"
Dim Shutdown
Set Shutdown=WScript.CreateObject("Shell.Application")
Shutdown.ShutdownWindows


'另一种定时提醒框
set WshShell = WScript.CreateObject("WScript.Shell")
alerttitle = "阿细工作室提提您!"
'其中vbnewline为换行符
alerttext = vbnewline & vbnewline & "        您已经使用电脑一个小时,为了健康着想,请注意休息!" & vbnewline & vbnewline & vbnewline & vbnewline & "(请移步至窗前,闭目养神,然后望下远景、活动下胳膊、脖子、腰部)"& vbnewline
for i = 1 to 8  '提醒8次
WScript.Sleep (1000*60*60)   '每隔1小时提醒一次
msgbox alerttext,4096,alerttitle
'每次提示框被关闭后播放一段声响
strSoundFile = "C:\Windows\Media\Notify.wav"
Set objShell = CreateObject("Wscript.Shell")
strCommand = "sndrec32 /play /close " & chr(34) & strSoundFile & chr(34)
objShell.Run strCommand, 0, True
next
'经过8次提醒后弹出关机菜单
Dim Shutdown
Set Shutdown=WScript.CreateObject("Shell.Application")
Shutdown.ShutdownWindows



'带有选择功能的提示框
intAnswer = Msgbox("你想删除这些文件吗?", vbYesNo, "提示")
If intAnswer = vbYes Then
Msgbox "您选择了“是”",,"测试"
Else
Msgbox "您选择了“否”",,"测试"
End If


'能隐藏启动DOS命令的选择框
Set objShell = CreateObject ("Wscript.Shell")
intAnswer = Msgbox("   你想清除系统中的临时文件吗?   ", vbYesNo, "提示")
If intAnswer = vbYes Then
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.tmp"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*._mp"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.gid"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.chk"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.old"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\recycled\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %windir%\*.bak"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %windir%\prefetch\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %windir%\temp\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/q   %userprofile%\recent\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %userprofile%\Local Settings\Temporary Internet Files\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %temp%\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %userprofile%\Local Settings\Temp\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %userprofile%\recent\*.*"),0 ,TRUE
Msgbox "已经清除系统中的临时文件!", VbInformation, "提示"
Else
End If


'密码输入对话提示框
dim a,ctr
ctr=0 '设置计数器
const pass="password" '设置密码
do
if ctr=3 then
msgbox("你已经输入三次,程序将关闭!")
exit do
else
a=inputbox("请输入密码(你有三次机会):","密码输入器")
if a=pass then
msgbox "密码正确,可以打开文件夹!"
Set objShell = CreateObject ("Wscript.Shell")
objShell.Run("explorer.exe %windir%\system32"),1 ,TRUE
if  err  =   0   then
End If
exit do
else
ctr=ctr+1 '如果密码出错就增加一次错误认证计数
msgbox("输入错误密码,请重新输入!")
end if
end if
loop

(修改说明:已经删除在 [能隐藏启动DOS命令的选择框] 中的两条在执行后造成不便的命令)

[ Last edited by axi on 2007-4-14 at 01:30 PM ]

   此帖被 +10 点积分       点击查看详情   
评分人:【 lxmxn 分数: +6  时间:2007-3-13 02:08
评分人:【 zhxy9804 分数: +2  时间:2007-3-14 22:24
评分人:【 hy433124shc 分数: +2  时间:2007-3-17 11:10


2007-3-13 01:52
查看资料  发短消息 网志  OICQ (453623262)  编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 2 楼』:  


  不错,值得收藏学习,顶一个先。


2007-3-13 02:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jackyggt
初级用户





积分 76
发帖 38
注册 2007-3-13
状态 离线
『第 3 楼』:  



2007-3-13 08:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
axi
中级用户

脚本爱好者


积分 238
发帖 93
注册 2007-3-11
来自 GZ
状态 离线
『第 4 楼』:  

补充:MsgBox 常数  有时在提示框中可以用其值来代替常数名

例如:Msgbox "你将执行危险操作!", VbExclamation, "警告!" 可以写成: Msgbox "你将执行危险操作!", 48, "警告!"


常数                         值               描述

vbOKOnly                   0      只显示确定按钮。
vbOKCancel                1      显示确定和取消按钮。
vbAbortRetryIgnore     2      显示终止、重试和忽略按钮。
vbYesNoCancel           3      显示是、否和取消按钮。
vbYesNo                    4      显示是和否按钮。
vbRetryCancel             5      显示重试和取消按钮。
vbCritical                   16      显示临界消息图标。
vbQuestion               32      显示警告消息图标。
vbExclamation           48      显示警告消息图标。
vbInformation            64     显示提示消息图标。
vbDefaultButton1        0      第一个按钮是默认按钮。
vbDefaultButton2      256     第二个按钮是默认按钮。
vbDefaultButton3      512     第三个按钮是默认按钮。
vbDefaultButton4      768     第四个按钮是默认按钮。
vbApplicationModal      0      应用程序模式。用户必须响应消息框,才能继续在当前应用程序中工作。
vbSystemModal        4096    系统模式。 在 Win16 系统中, 所有应用程序都将中止直到用户响应消息框。 在 Win32 系统中, 此常数提供一个应用程序模式信息框并总是保留在您可能正在运行的所有其它程序的顶部。  


下列常数与 MsgBox 函数一起使用,标识用户选定的按钮。仅当类型库中包含以下常数定义,且在您的工程文件中已经显式引用该类型库后,才允许使用这些常数。对于 VBScript,必须在代码中显式声明这些常数。


常数          值         描述

vbOK          1     确定按钮被单击。
vbCancel     2     取消按钮被单击。
vbAbort      3     终止按钮被单击。
vbRetry      4     重试按钮被单击。
vbIgnore     5     忽略按钮被单击。
vbYes         6     是按钮被单击。
vbNo          7     否按钮被单击。

[ Last edited by axi on 2007-3-13 at 07:20 AM ]

   此帖被 +4 点积分     点击查看详情   
评分人:【 lxmxn 分数: +4  时间:2007-3-13 13:16


2007-3-13 12:49
查看资料  发短消息 网志  OICQ (453623262)  编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 5 楼』:  

不错!

2007-3-14 01:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsion
高级用户




积分 789
发帖 310
注册 2004-9-2
状态 离线
『第 6 楼』:  

不错,值得收藏。

2007-3-14 02:03
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
andysky
初级用户





积分 50
发帖 21
注册 2007-3-13
状态 离线
『第 7 楼』:  

带有选择功能的提示框
intAnswer = Msgbox("你想删除这些文件吗?", vbYesNo, "提示")
If intAnswer = vbYes Then
Msgbox "您选择了“是”",,"测试"
Else
Msgbox "您选择了“否”",,"测试"
End If


'能隐藏启动DOS命令的选择框
Set objShell = CreateObject ("Wscript.Shell")
intAnswer = Msgbox("   你想清除系统中的临时文件吗?   ", vbYesNo, "提示")
If intAnswer = vbYes Then
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.tmp"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*._mp"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.log"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.gid"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.chk"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\*.old"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %systemdrive%\recycled\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %windir%\*.bak"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %windir%\prefetch\*.*"),0 ,TRUE
objShell.Run("%comspec% /c rd  /s/q   %windir%\temp & md %windir%\temp"),0 ,TRUE
objShell.Run("%comspec% /c del /f/q   %userprofile%\cookies\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/q   %userprofile%\recent\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %userprofile%\Local Settings\Temporary Internet Files\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %temp%\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %userprofile%\Local Settings\Temp\*.*"),0 ,TRUE
objShell.Run("%comspec% /c del /f/s/q %userprofile%\recent\*.*"),0 ,TRUE
End If
Msgbox "已经清除系统中的所有临时文件!", VbInformation, "提示"
这一段存为VBS为何不能用?

2007-3-14 02:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ieutk
初级用户




积分 107
发帖 48
注册 2006-11-30
状态 离线
『第 8 楼』:  

楼主,在你那个输入密码VBS中,可不可以不把密码显出来,也就是以星号显示!

2007-3-14 12:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: