标题: 来个会BAT的帮忙看一下
[打印本页]
作者: yhshiro
时间: 2008-9-4 20:40
标题: 来个会BAT的帮忙看一下
我这有个CMD黑窗口下执行的程序
命令是 pmh -Hide PID
他需要进程的PID数。。。
能不能帮忙写个批处理 让他自己读取!!??
随便那个进程的PID 像QQ的 或者其他的~
[
Last edited by yhshiro on 2008-9-4 at 09:13 PM ]
作者: HAT
时间: 2008-9-4 20:52
你想读取哪个进程的PID?
另,在这个版块混的人,都会BAT,当然,那些纯粹上来要代码的例外!
作者: huahua0919
时间: 2008-9-4 20:52
你说的是重新还是重启?
需要的是进程PID还是PID共计数量?
作者: yhshiro
时间: 2008-9-4 21:14
有错字。。。现在好啦
作者: yhshiro
时间: 2008-9-4 21:14
我是直接来要代码的 - -
作者: hongewuyan
时间: 2008-9-4 21:19
一般来说,进程名是不变的,PID是可变的
如果经常要用PMH来隐藏某个进程的话,是可以用批处理来自动获取其pid
@echo off
for /f "skip=3 tokens=2" %%i in ('tasklist /fi "imagename eq 你的进程名.exe"') do set id=%%i
pmh -Hide %id%
上面应该可以.
不过当进程名含有空格时,会获取错误
我的考虑是循环筛选那个变量直到获取到 .exe 之后的一个,不过写起来比较啰嗦就不列了.
作者: HAT
时间: 2008-9-4 21:24
@echo off
for /f "tokens=2 delims= " %%a in ('tasklist^|findstr /i "notepad.exe"') do set pid=%%a
echo %pid%
pmh -Hide %pid%
作者: huahua0919
时间: 2008-9-4 21:24
wmic process get handle
作者: yhshiro
时间: 2008-9-4 21:24
谢谢
作者: HAT
时间: 2008-9-4 21:29
wmic可以解决进程名有空格的问题
@echo off
for /f %%a in ('wmic process where "name='notepad.exe'" get handle') do set pid=%%a
pmh -Hide %pid%