找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23724|回复: 7

[问题求助] 生日提醒用VBS怎么做?

[复制链接]
发表于 2013-1-14 15:42:04 | 显示全部楼层 |阅读模式
比如2013年1月15日是生日,这天一打开电脑就会出现一个生日祝福的对话框!
VBS怎么做?谢谢
发表于 2013-1-14 17:04:26 | 显示全部楼层
本帖最后由 batman 于 2013-1-14 17:06 编辑

运行第一次后就会每天随机启动:

  1. On Error Resume Next
  2. Dim objSHELL, File, RegPath
  3. Set objSHELL = CreateObject("Wscript.Shell")
  4. File = WScript.ScriptFullName
  5. RegPath = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\AutoRun"
  6. objSHELL.RegRead RegPath
  7. If Err.Number <> 0 Then
  8.   Err.Clear
  9.   objSHELL.RegWrite RegPath, Chr(34) & File & Chr(34), "REG_SZ"
  10. End If
  11. Set objSHELL = Nothing
  12. Dim BirthDay, NowDay
  13. BirthDay = "2013-1-14"
  14. NowDay = DateValue(Now())
  15. If CStr(NowDay) = BirthDay Then WScript.Echo "生日快乐"
复制代码
 楼主| 发表于 2013-1-14 17:07:52 | 显示全部楼层
本帖最后由 ww0000 于 2013-1-14 17:09 编辑

回复 2# batman


1、为什么是 BirthDay = "2013-1-14"   我是2013-1-15

2、怎么才能到了这天每间隔十分钟提示一次,而不是随机呢?


3、怎么做到一开机就运行


4、如何才能取消它??

谢谢老师
发表于 2013-1-14 17:25:35 | 显示全部楼层
本帖最后由 batman 于 2013-1-14 17:30 编辑

随机启动就是开机自动运行,日期你自己改:

  1. On Error Resume Next
  2. Dim objSHELL, File, RegPath
  3. Set objSHELL = CreateObject("Wscript.Shell")
  4. File = WScript.ScriptFullName
  5. RegPath = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\AutoRun"
  6. objSHELL.RegRead RegPath
  7. If Err.Number <> 0 Then
  8.   Err.Clear
  9.   objSHELL.RegWrite RegPath, Chr(34) & File & Chr(34), "REG_SZ"
  10. End If
  11. Dim BirthDay, NowDay
  12. BirthDay = "2013-1-14"
  13. NowDay = DateValue(Now())
  14. If CStr(NowDay) = BirthDay Then
  15.   Do Until CStr(NowDay) <> BirthDay
  16.     objSHELL.Popup "生日快乐", 5
  17.     WScript.Sleep 1000 * 60 * 10
  18.   Loop
  19. End If  
  20. Set objSHELL = Nothing
复制代码
取消的批处理代码:

  1. @echo off
  2. taskkill /f /im "wscript.exe"
  3. reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v AutoRun /f
复制代码
 楼主| 发表于 2013-1-14 18:43:15 | 显示全部楼层
回复 4# batman


    批处理就是保存为BAT?
谢谢!
 楼主| 发表于 2013-1-15 11:40:06 | 显示全部楼层
回复 4# batman

老师,我根据你的代码改的,到了11:38:10提醒吃午饭了,为什么不行呀?

On Error Resume Next
Dim objSHELL, File, RegPath
Set objSHELL = CreateObject("Wscript.Shell")
File = WScript.ScriptFullName
RegPath = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\AutoRun"
objSHELL.RegRead RegPath
If Err.Number <> 0 Then
  Err.Clear
  objSHELL.RegWrite RegPath, Chr(34) & File & Chr(34), "REG_SZ"
End If
Dim Birthtime, Nowtime
Birthtime ="11:38:10"
Nowtime =Hour(Now)&":"&Minute(Now)&":"&Second(Now)
If CStr(Nowtime) = Birthtime Then
  Do Until CStr(Nowtime) <> Birthtime
    objSHELL.Popup "吃午饭了", 5
    WScript.Sleep 1000 * 60 * 1
  Loop
End If  
Set objSHELL = Nothing
 楼主| 发表于 2015-4-22 14:56:27 | 显示全部楼层
回复 4# batman


    老师,再请教一下,我要设置多个人的生日.如何写代码?
发表于 2015-4-22 23:26:33 | 显示全部楼层
本帖最后由 yu2n 于 2015-4-22 23:28 编辑

免费生日提醒服务:
指定公历、农历生日日期,到了生日日期发送QQ消息+邮件+短信。

见 [QQ邮箱] &#187; [日历] &#187; [提醒]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 14:25 , Processed in 0.019937 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表