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

怎样让批处理进程用普通方法杀不掉?

[复制链接]
发表于 2010-9-19 15:21:38 | 显示全部楼层
用空了写个驱动, 丢出来晒晒
发表于 2010-9-19 15:44:12 | 显示全部楼层

回复 76楼 的帖子

这位比某些忠实用户还要忠实地出现了……
发表于 2010-10-10 15:06:57 | 显示全部楼层
牛人到处有,这里特别多
多看看,学无止境啊
发表于 2012-6-27 17:24:09 | 显示全部楼层
简单想了一下思路,本机测试通过,测试前在C盘建一个TEST的目录将script1与script2放入test目录
C_File2过程是用于生成另一个文件的 比如script1.cmd就是用if exist XX和echo XXX>script2.cmd检测script2。 同样的script2.cmd中的C_File2用于检测和生成script1.cmd. 此处节省时间没写。

--------Script 1------
@ECHO OFF
:Main
title Script1
SET S1=1
SET S2=1
:C_File1
If not exist c:\test\wait1.vbs echo WScript.Sleep 100 >c:\test\wait1.vbs

:C_File2
Rem here is use for create SCRIPT2.CMD

:S_LOOP
FOR /F %%i IN ('TASKLIST /v ^|FIND "Script1" /i /c') DO SET S1=%%i
IF /I %S1% GEQ 2 GOTO END

FOR /F %%i IN ('TASKLIST /v ^|FIND "Script2" /i /c') DO SET S2=%%i
IF /I %S2% GEQ 1 (
     ECHO Running script 2 is %S2%
) ELSE (
     ECHO script 2 is closed, rerun it
     Start /min C:\test\script2.cmd
)
START /wait /MIN CSCRIPT.EXE C:\TEMP\Wait1.vbs
GOTO S_LOOP

:END


-----------Script 2------------
@ECHO OFF
:Main
title script2
SET S3=1
SET S4=1
:C_File1
If not exist c:\test\wait1.vbs echo WScript.Sleep 100 >c:\test\wait2.vbs

:C_File2
Rem here is use for create SCRIPT1.CMD

:S_Loop
FOR /F %%i IN ('tasklist /V ^|FIND "script2" /i /c') DO SET S3=%%i
IF /I %S3% GEQ 2 Goto END

ECHO Check MKFIRST is running...
FOR /F %%i IN ('tasklist /V ^|FIND "Script1" /i /c') DO SET S4=%%i
IF /I %S4% GEQ 1 (
     ECHO Running script 1 is %S4%
) ELSE (
     ECHO script 1 is closed, rerun it
     Start /min C:\test\script1.cmd
)
START /wait /MIN CSCRIPT.EXE C:\TEMP\Wait2.vbs

GOTO S_LOOP

:END
发表于 2012-8-17 21:09:58 | 显示全部楼层
以SYSTEM权限运行即可
发表于 2012-10-20 15:51:42 | 显示全部楼层
可以开启两个本身,生成两个临时文件。每个批处理都不停的修改一个文件并检测另一个文件
如果一个文件停止修改则代表一个程序已经运行结束
检测到就重新打开一个
发表于 2013-4-12 20:38:36 | 显示全部楼层
这样就无法关闭了
  1. @echo off
  2. :loop
  3. start "" "%0"
  4. goto loop
复制代码
发表于 2014-8-2 11:45:21 | 显示全部楼层
目前只能用一種方式處理問題
发表于 2021-8-3 23:41:41 | 显示全部楼层
回复 82# 111


    会死机的...
发表于 2021-8-3 23:44:39 | 显示全部楼层
回复 81# 路过


    可taskkill是同时结束的呀,就算有0.4秒的延迟也无法保证边写入边读取呀(cpu使用率:100%)!
发表于 2021-8-14 18:58:22 | 显示全部楼层
  1. dim a
  2. do
  3. a=inputbox("输入密码","a")
  4. loop
复制代码
VB代码可以吧,但也放不了结束进程啊
发表于 2021-8-14 19:25:07 | 显示全部楼层
  1. @echo off
  2. :1
  3. taskkill /f /t /im cmd.exe||start cmd.exe
  4. goto 1
复制代码
e,通过不断关闭和打开,使taskkill无能为力,所以他把自己关了
(即使转成exe都不好使)
发表于 2022-4-26 19:59:07 | 显示全部楼层
回复 3# flyinspace
双线程
发表于 2022-4-26 20:03:25 | 显示全部楼层
回复 81# 路过
可以写bat,vbs,互相防护
发表于 2022-6-4 19:41:53 | 显示全部楼层
回复 26# flyinspace


    结束进程树不行吗? (啊啊啊,怎么又顶到坟贴

评分

参与人数 1PB -50 收起 理由
Batcher -50

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 23:14 , Processed in 0.022785 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表