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

[文件操作] 批处理如何让内存占用达到多少百分比的时候关闭某个软件?

本帖最后由 heike045 于 2020-4-4 16:37 编辑

批处理如何让内存占用达到多少百分比的时候关闭某个软件?

回复 19# heike045


    能否详细说明一下【他这个没法自动结束进程释放内存】,请把你的测试用例和测试结果分别发出来看看。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 19# heike045


    额,你是不是对进程有什么误解。
    一般情况下,软件关闭,对应的进程就会关闭

TOP

回复 2# wujunkai


    怎么改  能否请教下大神, 他这个没法自动结束进程释放内存,只会关闭软件

TOP

回复 1# heike045

    http://www.bathome.net/thread-55285-1-1.html拿这个改一下就可以了

TOP

如何用批处理让内存占用数大于设定值时 关闭某个进程释放内存?

本帖最后由 heike045 于 2020-4-4 16:27 编辑

如何用批处理让内存占用数大于设定值时 关闭某个进程释放内存?

TOP

回复 15# heike045


   不好意思,我也不知道

TOP

回复 12# went


    在吗 大神。。。。。

TOP

回复 12# went


    遇到个问题,上面那个自动关闭进程的  只会把软件关掉 不会把进程结束释放内存

TOP

回复 12# went


    太完美了 谢谢大神!

TOP

本帖最后由 went 于 2020-4-3 13:54 编辑
  1. @echo off&color 2f
  2. %1 start "" mshta vbscript:createobject("shell.application").shellexecute("""%~0""","REM",,"runas",1)(window.close)&exit
  3. set "s=60"
  4. :loop
  5. REM --------------------------------CODE1-----------------------------------
  6. taskkill /f /im "werfault.exe"
  7. timeout /t %s% /nobreak  >nul 2>nul
  8. REM --------------------------------CODE2-----------------------------------
  9. tasklist /FI "username eq dc2-user" | find /C "vds-qt.exe" > temp.txt
  10. set /p num= < temp.txt
  11. del /F temp.txt
  12. echo %num%
  13. if "%num%" == "0" del /F C:\Users\dc2-user\AppData\Roaming\VDS\mncache.dat C:\Users\dc2-user\AppData\Roaming\VDS\mnpayments.dat && start /D "C:\Program Files\vds" vds-qt.exe
  14. timeout /t %s% /nobreak  >nul 2>nul
  15. REM --------------------------------CODE3-----------------------------------
  16. REM name
  17. set "process=vds-qt.exe"
  18. REM memory(KB)
  19. set "m=6144000"
  20. echo %process%
  21. echo %m%KB
  22. echo.
  23. tasklist /fi "IMAGENAME eq %process%" | findstr /i "pid = %process%"
  24. taskkill /f /fi "IMAGENAME eq %process%" /fi "MEMUSAGE gt %m%"
  25. timeout /t %s% /nobreak  >nul 2>nul
  26. cls & goto :loop
  27. pause&exit
复制代码
回复 11# heike045

TOP

回复 10# went


    有点拼不起来 能否帮我弄一下,按照文件顺序来。

TOP

  1. @echo off
  2. %1 start "" mshta vbscript:createobject("shell.application").shellexecute("""%~0""","REM",,"runas",1)(window.close)&exit
  3. :begin
  4. REM CODE 1
  5. timeout /t 60 /nobreak  >nul 2>nul
  6. REM CODE 2
  7. timeout /t 60 /nobreak  >nul 2>nul
  8. REM CODE 3
  9. timeout /t 60 /nobreak  >nul 2>nul
  10. goto :begin
  11. pause&exit
复制代码
回复 9# heike045
REM 所在行替换成你的代码,提权代码须放在开头

TOP

回复 7# went


    请教大神,如何把3个BAT的内容 融入到同一个BAT中,先执行第一个代码,然后延迟60秒执行第二个代码,然后延迟60秒执行第三个代码,然后延迟60秒再跳回去第一个代码,如此循环

TOP

回复 7# went


    好的 谢谢!

TOP

返回列表