批处理之家's Archiver

hulala 发表于 2020-2-26 15:51

bat获取指定进程路径地址问题,请大神赐教

例如:wmic process where name="qq.exe" get executablepath
结果:
C:\Users\Administrator>wmic process where name="qq.exe" get executablepath
ExecutablePath
C:\Program Files (x86)\Tencent\QQ\Bin\QQ.exe
先结束QQ.exe
然后copy qq1.exe覆盖C:\Program Files (x86)\Tencent\QQ\Bin\QQ.exe

如果不用wmic还有其他什么办法?

具体命令怎么写,感谢大神

flashercs 发表于 2020-2-26 16:07

为何不用wmic?这是最简单的方法.
当然你还可以自己写个console程序来读取.

hulala 发表于 2020-2-26 16:19

[b]回复 [url=http://www.bathome.net/redirect.php?goto=findpost&pid=226798&ptid=54927]2#[/url] [i]flashercs[/i] [/b]


    用wmic也行,那能给出个具体代码吗?

zaqmlp 发表于 2020-2-26 16:36

[code]@echo off
set info=互助互利,支付宝扫码头像,感谢打赏
rem 有问题,可加QQ956535081及时沟通
title %info%
cd /d "%~dp0"
set "exename=qq.exe"
set "exepath="
for /f "tokens=1* delims==" %%a in ('wmic process where "name='%exename%'" get executablepath /value^|find "="') do (
    set "exepath=%%b"
)
if defined exepath (
    taskkill /f /im "%exename%"
    echo;"%exepath%"
    copy /y "qq1.exe" "%exepath%"
)
:end
echo;%info%
pause
exit[/code]

flashercs 发表于 2020-2-26 16:50

[b]回复 [url=http://www.bathome.net/redirect.php?goto=findpost&pid=226799&ptid=54927]3#[/url] [i]hulala[/i] [/b][code]@echo off
set "exename=qq.exe"
set "exepath="
for /f "tokens=1* delims==" %%a in ('wmic process where "name='%exename%'" get executablepath /value^|find "="') do (
    set exepath=%%b
)
if defined exepath (
    taskkill /f /im "%exename%"
    echo."%exepath%"
    copy /y "qq1.exe" "%exepath%"
)[/code]

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.