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

最简单的,[会越来越长]

  1. @echo off
  2. set/a n=%~z0-110
  3. if %n% gtr 0 echo 程序已经运行了:%n%次
  4. set/p =a>%~f0
  5. pause
  6. goto :eof
  7. ::
复制代码

TOP

hi, netbenton也来拉
现在如果做的话打算用 assoc 关联一个特殊项,该项记录着次数。
assoc .次数=n
估计实际上是根改注册表差不多

[ 本帖最后由 523066680 于 2009-11-20 08:58 编辑 ]

TOP

@echo off
for /f "tokens=2" %%i in (%~nx0) do (set sx=%%i)
if %sx%==0 goto 1
echo 文件已经运行%sx%次
:1
set /a sx+=1
echo aloc %sx% >>%~nx0
pause>nul&&exit
aloc 0

注意代码最后有1空行。。

TOP

回复 28# batman

回复 28# batman

这个代码有点问题,直接关掉程序的话不会计数,应该改一下才可以.
  1. ::3
  2. @echo off
  3. set /p num=<%~fs0
  4. set "num=%num:~2%"
  5. if %num% neq 0 echo.&echo 程序已运行了%num%次
  6. set /a num+=1
  7. for /f "delims=" %%i in (%~fs0) do (
  8.     if not defined flag (
  9.        echo ::%num%>%~fs0&set "flag=a"
  10.        ) else (
  11.        echo %%i>>%~fs0
  12.     )
  13. )
  14. pause>nul
复制代码
pause>nul 这个放在计数后面,不然不按键盘,直接把程序关掉的话不会计数.

TOP

注册表我也不熟,试一下:
  1. @echo off
  2. REG QUERY hkcr\.$$$ /v "cishu" 1>nul 2>nul||reg add hkcr\.$$$ /v "cishu" /d "0" /f >nul
  3. for /f "tokens=1-3" %%a in ('REG QUERY  hkcr\.$$$ /v "cishu"') do (set "cishu=%%c")
  4. if not "%cishu%"=="0" echo 已经运行了 %cishu% 次
  5. set /a "cishu+=1"
  6. reg add hkcr\.$$$ /v "cishu" /d "%cishu%" /f >nul
  7. echo.
  8. set /p "a=按 回车 直接退出;空格 + 回车 清除运行记录。 "
  9. if defined a reg delete  hkcr\.$$$ /f & pause
复制代码

TOP

返回列表