中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 限制a.vbs 的运行次数? 上一主题 | 下一主题
ooaf
中级用户





积分 313
发帖 162
注册 2007-4-2
状态 离线
『楼 主』:  限制a.vbs 的运行次数?

每天限制a.vbs 的运行次数?
如果a.vbs 运行次数超过2,则退出。

[ Last edited by ooaf on 2009-2-23 at 13:16 ]

2009-2-23 12:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  

本版搜索“次数”,可以找到几个思路。



2009-2-23 13:57
查看资料  发短消息 网志   编辑帖子  回复  引用回复
5872169
高级用户





积分 959
发帖 474
注册 2007-10-25
状态 离线
『第 3 楼』:  

for i=1 to 2…………next
这是运行二次

2009-2-23 16:59
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ooaf
中级用户





积分 313
发帖 162
注册 2007-4-2
状态 离线
『第 4 楼』:  

我的意思是,a.vbs 运行结束后,再运行。 而不是重复运行2次。
如: 

我把a.vbs放在启动项里,一天可能开机好几次,那么a.vbs 就会运行好几次,因此,a.vbs 每次运行时,检查  当天的运行次数,超过2就不运行。

2009-2-23 17:13
查看资料  发短消息 网志   编辑帖子  回复  引用回复
newxso
初级用户

l i u s s


积分 73
发帖 101
注册 2008-9-17
来自 GZ
状态 离线
『第 5 楼』:  

在你的原代码前面加上以下一段代码:

Set WshShell=WScript.CreateObject("WScript.Shell")
Key="HKEY_CURRENT_CONFIG\Software\avbs\"
on error resume next
Last=WshShell.RegRead(Key&"Start")
a=split(Last,"\"):LastDay=a(0)
if LastDay=CStr(date()) then
   b=a(1):c=a(2)
   if c<>"" then
      WshShell.Popup "今天内你已经运行了两次,再见!   ",5,"警告!",VbExclamation
      Wscript.Quit
   end if
else
   WshShell.RegDelete(Key&"Start")
end if
on error goto 0
if c="" then WshShell.Regwrite(Key&"Start"),date()&"\1\2"
if b="" then WshShell.Regwrite(Key&"Start"),date()&"\1"

RE:6楼)更新以上代码如下(没有提示):

Set WshShell=WScript.CreateObject("WScript.Shell")
num=2  '设置允许启动次数
Key="HKEY_CURRENT_CONFIG\Software\avbs\"
on error resume next
Last=WshShell.RegRead(Key&"Start")
a=split(Last,"\"):LastDay=a(0)
if LastDay=CStr(date()) then
   b=cint(a(1)):if b=num then:Wscript.Quit
else
   WshShell.RegDelete(Key&"Start")
end if
on error goto 0
ctr=b+1
WshShell.Regwrite(Key&"Start"),date()&"\"&ctr


[ Last edited by newxso on 2009-2-26 at 19:54 ]

   此帖被 +4 点积分        点击查看详情   
评分人:【 ooaf 分数: +4  时间:2009-2-27 01:31


2009-2-23 18:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ooaf
中级用户





积分 313
发帖 162
注册 2007-4-2
状态 离线
『第 6 楼』:  

没有提示的
Set WshShell=WScript.CreateObject("WScript.Shell")
Key="HKEY_CURRENT_CONFIG\Software\avbs\"
on error resume next
Last=WshShell.RegRead(Key&"Start")
a=split(Last,"\"):LastDay=a(0)
if LastDay=CStr(date()) then
   b=a(1):c=a(2)
   if c<>"" then
      a=a
      Wscript.Quit
   end if
else
   WshShell.RegDelete(Key&"Start")
end if
on error goto 0
if c="" then WshShell.Regwrite(Key&"Start"),date()&"\1\2"
if b="" then WshShell.Regwrite(Key&"Start"),date()&"\1"


2009-2-26 05:11
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ooaf
中级用户





积分 313
发帖 162
注册 2007-4-2
状态 离线
『第 7 楼』:  

谢谢,我知道了。我把提示删去,是因为我想让脚本隐藏执行。

2009-2-26 10:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: