[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[已解决]VBS中一个变量的使用

  1. dim ctr
  2. ctr = 0
  3. do
  4. if ctr = 3 then
  5. Set Shutdown=WScript.CreateObject("Shell.Application")
  6. Shutdown.ShutdownWindows
  7. exit do
  8. else
  9. ctr = ctr+1
  10. WScript.Sleep (1000*60*60)
  11. set Wmp = CreateObject("WMPlayer.ocx")
  12. Wmp.Url = "1hour.mp3"
  13. do Until Wmp.PlayState = 1
  14. Wsh.Sleep 1000
  15. loop
  16. end if
  17. loop
复制代码
以上代码每一小时播放一次提醒,分别顺序播 1hour.mp3、2hour.mp3、3hour.mp3 ,三小时后停止播放并启用关机程序。请问如何把 ctr 应用到 Wmp.Url = "1hour.mp3" 句中来代替其中的数字 1 呢?我试过 Wmp.Url = "ctr&hour.mp3"  这种形式均不能。

[ 本帖最后由 newxso 于 2008-9-28 06:58 编辑 ]

逻辑结构有问题!
根据下面的代码自己分析
  1. ctr = 0
  2. do
  3.     ctr = ctr+1
  4.     if ctr = 3 then
  5.         Set Shutdown=WScript.CreateObject("Shell.Application")
  6.         Shutdown.ShutdownWindows
  7.         exit do
  8.     else
  9.         WScript.Sleep (1000*60*60)
  10.         set Wmp = CreateObject("WMPlayer.ocx")
  11.         Wmp.Url = ctr & "hour.mp3"
  12.         do Until Wmp.PlayState = 1
  13.             Wsh.Sleep 1000
  14.         loop
  15.     end if
  16. loop
复制代码
用while...wend语句更简洁
  1. ctr = 0
  2. while ctr < 3
  3.     ctr = ctr + 1
  4.     WScript.Sleep 1000*60*60
  5.     set Wmp = CreateObject("WMPlayer.ocx")
  6.     Wmp.Url = ctr & "hour.mp3"
  7.     do Until Wmp.PlayState = 1
  8.         Wsh.Sleep 1000
  9.     loop
  10. wend
  11. CreateObject("Shell.Application").ShutdownWindows
复制代码
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

终于明白了,多谢版主帮忙。看来要好好学一下VBS基础。

TOP

返回列表