标题: 简易小闹铃(VBS)版——本机(XP SP2)上测试通过。
[打印本页]
作者: jmz573515
时间: 2006-12-23 04:58
标题: 简易小闹铃(VBS)版——本机(XP SP2)上测试通过。
'前几天看到利用批处理发出声音(ECHO ^G)的贴子,于是想到了...。
'功能:在指定时间发出声音提醒你,提醒完之后会出现一个询问框,如果你没有任何操作程序将在10妙之后自动取消询问框并在1分钟后继续提醒。
on error resume next
set ws=createobject("wscript.shell")
set fso=createobject("scripting.filesystemobject")
a=0
do until a=1
t=inputbox("注意:本程序只考虑到分种,时间格式为" & vbcrlf & vbcrlf & " 早晨:8点5分要输入0805" & vbcrlf & vbcrlf & " 下午:1点要输入1300" & vbcrlf & vbcrlf & "其它以此类推。","小闹铃","请在些处输入提醒您的时间")
if t="" then
wscript.quit
elseif IsNumeric(t)=false then
msgbox "输入错误,请重新输入!",16+4096,"错误"
elseif len(t)<>4 or left(t,2)>24 or right(t,2)>59 then
msgbox "输入错误,请重新输入!",16+4096,"错误"
else
a=1
call naoling()
end if
loop
sub naoling()
shi=left(t,2)
fen=right(t,2)
do
if timer>3600*shi+60*fen then
ws.run "cmd /c @echo ",0,true
sfjx=Ws.Popup("时间已到,是否继续运行闹铃程序?"& vbcrlf & "如果不退出闹铃将在1分钟后继续提醒。", 10, "闹铃提醒", 4 + 32)
if sfjx=7 then
wscript.quit
else
wscript.sleep 1000*60
end if
end if
wscript.sleep 1000
loop
end sub
[
Last edited by jmz573515 on 2006-12-28 at 09:04 AM ]
作者: ccwan
时间: 2006-12-23 05:22
虚拟机测试成功,(我的机子很多vbs不能用)
加分了.
作者: 9527
时间: 2006-12-23 05:32
我的超简易,P版小闹闹,呵呵,有很大的局限性,XP测试通过,各位凑活着用吧!!!
@echo off&setlocal
set/p a=请您输入闹钟提醒您的时间(格式:18:30) :
at %a% ""mplay32.exe /play /close c:\windows\media\ringin.wav"" >nul
作者: eech
时间: 2006-12-23 06:57
谢谢楼主的作品.很好用.
另外:3楼的朋友.运行你的脚本提示:
: F:\软件\新建 文ff本文档.vbs
行: 1
字符: 1
错误: 无效字符
代码: 800A0408
源: Microsoft VBScript 编译器错误
作者: ccwan
时间: 2006-12-23 07:09
3楼是批处理版的
作者: eech
时间: 2006-12-23 07:42
对不起.是我看错了
作者: eech
时间: 2006-12-23 07:44
如果这个VBS可以扩展一下就好了
作者: tulg
时间: 2006-12-23 08:24
3楼的不错啊。谢谢
作者: lovehack2006
时间: 2006-12-23 16:45
顶,,不过在我机子上三楼的怎么不能用呀?如果计划任务的服务被关了又怎么办呀?是不是该改进一下呀???如果计划任务关了的话,AT还能用吗?
作者: jmz573515
时间: 2006-12-24 02:44
我也想问一下,在我的机器上9527兄的也是实现不了,不知道为什么,能不能说一下都需要什么??
作者: redtek
时间: 2006-12-24 02:50
如果遇到了不能执行等奇怪的问题更是一件好事儿~:)
兄可以不断的琢磨它的原因、一条一条指令的单试、一遍一遍的分析问题出在哪里……
然后水平就又高了~:)
作者: jmz573515
时间: 2006-12-24 02:52
哈哈,老弟说得有道理,可惜我现在就是想不通为什么在我的机器里不能实现?还请指教!
作者: 9527
时间: 2006-12-24 02:52
这个我不知道WIN2000系统上是否有这个ringin.wav的文件,而且如果是2000路径应该是WINNT才对,其次,要有管理员身份,因为AT需要管理员身份才可以使用(当然可以改下注册表下所有用户都可以使用),最后看下支持AT命令的服务是否开启,还有你的时间显示格式是否正确,我在发帖的时候就已经说明了---有很大的局限性
作者: jmz573515
时间: 2006-12-24 02:56
上面的条件都能满足,我的是XP系统,有c:\windows\media\ringin.wav这个文件,就是不知道有什么方法得到AT命令的服务是否开启?
作者: redtek
时间: 2006-12-24 02:56
Windows Server 2003 有 ringin.wav 这个文件~:)
C:\windows\Media 的目录
2003-03-27 20:00 10,026 ringin.wav
1 个文件 10,026 字节
作者: 9527
时间: 2006-12-24 03:01
你开音箱了吗?呵呵........,你在CMD下运行at回车看下什么结果,然后你在开始运行mplay32.exe /play /close c:\windows\media\ringin.wav下看看能不能听到声音,最后看看你的小时制是24小时的还是12小时的?
作者: redtek
时间: 2006-12-24 03:03
Quote: |
Originally posted by jmz573515 at 2006-12-23 13:56:
上面的条件都能满足,我的是XP系统,有c:\windows\media\ringin.wav这个文件,就是不知道有什么方法得到AT命令的服务是否开启? |
|
兄可以找找“计划任务”的相关设置,
然后再研究一下注册表可以控置些什么,
再研究一下 SC 命令与之相关的内容,
然后再研究一下 net start 相关的内容,
然后再反复开启服务、对比注册表变化,于是兄又可以再研究批处理写注册表操作……
然后兄研究完了服务、注册表、批处理写……
突然发现注册表好玩,于是又研究注册表与数据结构的关系,与算法的关系,
又发现注册表还可以当做自己的数据据,于是又创造了很多发现……
然后又会遇到某个端口,于是兄再研究……
后来,兄开始研究远程控置,用各种方法……
N天过去了,兄将成为一代黑客大师~:)
俺觉得那些顶尖的大师全是这么修练过来的~:)
作者: 9527
时间: 2006-12-24 03:14
楼上正解!!!
确实是这样的,有多问的时间也许自己又增加了不少知识,虽说不耻下问,但情况不一样,想法不一样,对待的事物也不一样,计算机--就是用来计算的机器,人非机器,我本无问!!!
作者: 9527
时间: 2006-12-24 03:16
要多相信自己一些,多学习解决问题的方法和途径,技术不是问出来的,是靠自己努力出来的............
作者: jmz573515
时间: 2006-12-24 03:51
谢谢两位,我一定会自己找到答案。互相帮助,共同进步!
作者: ccwan
时间: 2006-12-24 03:55
因为有些东西别人讲了也不会,所以我很少提问。^_^
作者: zzghost
时间: 2006-12-24 04:31
酒楼的,计划任务的服务关了的话可以用sc 命令打开
作者: wudixin96
时间: 2007-4-6 22:44
3楼的简单。但偶用不了。偶的所有音频文件都删除了。
作者: zouzhxi
时间: 2007-4-6 23:04
有的没有这个:[mplay32.exe]
我的只有:[mplayer.exe]
本机环境是:XP+SP2
下面是可以的。不过会出现一个大大的窗口(要先显示了mplayer.exe 的用法,才出现声音)。。。。
mplayer.exe /play /close c:\windows\media\ringin.wav
作者: kongsub
时间: 2007-10-22 00:11
晕倒四 ,没声音
作者: gshavzhog
时间: 2007-10-22 14:46
试试就知道了。