用批处理修改日期 然后在改回来

XP系统,因为要运行一个破解软件,日期必须是2011-02-01,才能运行这个软件,要求,运行这个批处理先记录下今天是XX年X月X日,然后改日期到2011.2.1,然后运行artcampro.exe这个文件,批处理在后台默默运行,30秒一次判断artcampro.exe进程是否存在,如不存在则改回原来日期
————————————————————————————
其实我也有点思路,就是觉得麻烦,希望批处理达人帮帮忙了,解决后必定追加悬赏复制粘贴党就不用来了

代码如下:

@echo off
SET y=%date:~0,4%
SET m=%date:~5,2%
SET d=%date:~8,2%
ECHO %y%/%m%/%d%
DATE 2011/02/01
START "" d:\artcampro.exe
:loop
ping -n 31 127.1>nul
tasklist |FIND "artcampro.exe">nul
IF %errorlevel%==1 (DATE %y%/%m%/%d%&&EXIT) else (GOTO loop)
pause

30秒循环检测进程是否存在,不存在就改回日期退出批处理.

追问:如果我运行了几次这样的软件,会不会同时有几个这样的进程存在呢?
回答:这得看运行几次是不是连续运行,也就是说之前的程序(artcampro.exe)未关闭,我写的这个只是判断有没有,而不是判断有几个. 如 "依梦琴瑶"所说 start /wait 等待程序结束.这样可以用来启动一次程序.
追问:不知道有start /wait这个,如关闭掉artcampro.exe程序就能把时间给改回去,这就最好了,
那么应该怎么写呢?
回答:

代码如下:

@echo off
SET y=%date:~0,4%
SET m=%date:~5,2%
SET d=%date:~8,2%
ECHO %y%/%m%/%d%
DATE 2011/02/01
START /WAIT "" d:\artcampro.exe
DATE %y%/%m%/%d%&&EXIT
pause

完整代码.

追问:以前不知道START /WAIT,今天长知识了,谢谢你,也谢谢其他回答的各位了。
提问者评价:再次感谢

其他3条回答

代码如下:

@echo off
(echo %date:~0,-3%)>1.txt
date 2011.2.1
start artcampro.exe
:loop
tasklist|find /i "artcampro.exe" || goto begin
ping -n 30 127.0.0.1>nul
goto loop
:begin
set /p d=<1.txt
date %d%
pause

命令详解:
start /wait 你可以看一下命令帮助
WAIT 启动应用程序并等待它终止。

command/program

如果它是内部 cmd 命令或批文件,则该命令处理器是使用
cmd.exe 的 /K 开关运行的。这表示运行该命令之后,该窗口
将仍然存在。

如果它不是内部 cmd 命令或批文件,则它就是一个程序,并将
作为一个窗口化应用程序或控制台应用程序运行。

yyykkkyyyy | 十三级
帮你懒一把 批处理放那artcampro.exe程序同位置再发送快捷方式到桌面,如果之前已启用并正在运行那个程序,它就不会再启动程度及改动日期

代码如下:

@echo off&cd/d "%~dp0"
if "%~1"=="h" goto begin
if not exist hide.vbs (
echo Set ws = CreateObject("Wscript.Shell"^)
echo ws.run "cmd /c %~s0 h" ,vbhide)>hide.vbs
start hide.vbs
exit
:begin
tasklist|find/i "artcampro.exe"&&exit
set td=%date:~,10%
date 2011-02-01
start "" /wait "artcampro.exe"
date %td%

依梦琴瑶 | 来自手机知道 | 十三级
其实不用检测,只需利用start /wait命令让批处理等待程序结束即可,所以你可以结合jd08139这个知友的内容即可

(0)

相关推荐

  • 用批处理修改日期 然后在改回来

    XP系统,因为要运行一个破解软件,日期必须是2011-02-01,才能运行这个软件,要求,运行这个批处理先记录下今天是XX年X月X日,然后改日期到2011.2.1,然后运行artcampro.exe这个文件,批处理在后台默默运行,30秒一次判断artcampro.exe进程是否存在,如不存在则改回原来日期 ---------------------------- 其实我也有点思路,就是觉得麻烦,希望批处理达人帮帮忙了,解决后必定追加悬赏复制粘贴党就不用来了 复制代码 代码如下: @echo of

  • 如何获知文件最后的修改日期和时间?

    <%Dim objCMFUDim strModified Set objCMFU = Server.CreateObject("CM_FileUtils.GetProperty")' 创建对象并赋给变量,并且GetProperty类是当前唯一可用的. strModified = objCMFU.LastModified' 检索并返回包含最后修改日期和时间(LastModified function )值.当然了,还要考虑到出错的可能. Set objCMFU = Nothing'

  • 通过批处理修改FTP账号和密码

    方法一.批处理修改FTP账号和密码 @echo off rem 指定FTP用户名 set ftpUser=FTPUSERNAME rem 指定FTP原密码 set ftpPassOld=FTPPASSWORDOLD rem 指定FTP新密码 set ftpPassNew=FTPPASSWORDNEW rem 指定FTP服务器地址 set ftpIP=192.168.0.2 set FtpFile=%temp%/TempFTP.txt >"%FtpFile%" echo,%ftpU

  • JavaScript显示当前文档最后修改日期的方法

    本文实例讲述了JavaScript显示当前文档最后修改日期的方法.分享给大家供大家参考.具体实现方法如下: <script language="Javascript"> <!-- var dateModified = document.lastModified; mydate = dateModified.slice(0,10); document.write("<b>Last updated: " + mydate + "&

  • JS简单实现查看文档创建日期、修改日期和文档大小的方法示例

    本文实例讲述了JS简单实现查看文档创建日期.修改日期和文档大小的方法.分享给大家供大家参考,具体如下: 一 介绍 查看文档创建日期.修改日期和文档大小,可以使用fileCreatedDate属性.fileModifiedDate 属性.lastModified属性和fileSize属性来实现. fileCreatedDate属性 该属性用来获取文档的创建日期. 语法: [date=]fileCreatedDate date:字符串变量,用来存储文档的创建日期.date是可选项. fileModi

  • linux CentOS 7.4下 mysql5.7.20 密码改回来的处理方法

    mysql升级5.7版本以后,安全性大幅度上升. 但是呢...带复杂的记不住.额额..本来脑子就不好使,还记那么复杂,尤其是本地就更没必要,还是root方便. 进入mysql mysql> SHOW VARIABLES LIKE 'vali%'; +--------------------------------------+--------+ | Variable_name | Value | +--------------------------------------+--------+

  • mysql实现批量修改字段null值改为空字符串

    目录 批量修改字段null值改为空字符串 将某个字段修改为null(从不允许为空not null修改为null) 批量修改字段null值改为空字符串 UPDATE 表名 SET 字段名 = ( CASE WHEN IFNULL(字段名, '') = '' THEN '' ELSE 字段名 END ) WHERE 字段名 IS NULL; 将某个字段修改为null(从不允许为空not null修改为null) 以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们.

  • 通过批处理修改DNS的代码(推荐)

    批处理改DNS(推荐): 复制代码 代码如下: @echo off::判断本地连接 赋值afor /f "tokens=3,4 delims== " %%i in ('ipconfig ^|findstr /r "本"') do echo %%i %%j >DNS.txtfor /f "tokens=1 delims==:" %%d in (DNS.txt) do set a=%%d::请根据实际情况更改下面三行echo 开始更改主dnsn

  • 用批处理修改host文件的代码

    @echo 127.0.0.1 baidu.com >>C:\Windows\System32\Drivers\etc\hosts 这样就是换一行写入. 如果还想换一行,就写: 复制代码 代码如下: @echo. >>C:\Windows\System32\Drivers\etc\hosts @echo 127.0.0.1 baidu.com >>C:\Windows\System32\Drivers\etc\hosts @echo 192.168.4.201 ibmr

  • 使用批处理修改web打印设置笔记 适用于IE

    就不得不调整WEB页面页边距以及去掉页眉页脚,上网查了很多资料发现IE没有自带这些设置打印机的功能,无法使用纯javascript设置.前几天上网查了资料,可以通过修改注册表达到去除页眉页脚的效果,可是试了一下后发现IE不允许直接修改注册表.后面又想到了两种解决办法:1)营业员通过IE的"页面设置"功能再结合我们提供的设置参数设置打印效果:2)我们提供一个批处理文件,其中已经设置好了必要的参数,营业员只需运行一次该批处理文件即可. 我选则了第二种方法,以前没写过批处理文件,但听说很容易

随机推荐