批处理或者vbs编写一个判断进程是否存在的代码
如果进程存在就结束它,如果不存在就从指定目录启动程序~最后要达到的效果就是运行这个批处理(或者vbs)就启动应用程序,再次运行就关闭这个程序~~最好运行的时候不要出现黑框...
如果进程存在就结束它,如果不存在就从指定目录启动程序~
最后要达到的效果就是运行这个批处理(或者vbs)就启动应用程序,再次运行就关闭这个程序~~最好运行的时候不要出现黑框
就高手指点!! 展开
最后要达到的效果就是运行这个批处理(或者vbs)就启动应用程序,再次运行就关闭这个程序~~最好运行的时候不要出现黑框
就高手指点!! 展开
2个回答
展开全部
CreateObject("WScript.Shell").Run "cmd /c hidecmd.bat",0
上面一行保存为VBS文件,运行此vbs文件即可不出黑框。两个文件保存在同一目录下
如果要在不同路径调用,请自行更改vbs中的hidecmd.bat
下面代码保存为hidecmd.bat(vbs中定义的文件名)文件
@echo off
set "name=notepad.exe"
::上行定义进程名称
set "str_path=C:\Windows\System32\"
::上行定义进程路径
tasklist /svc|find "%name%"&&taskkill /f /im %name% /t||start "" "%str_path%%name%"
exit /b
上面一行保存为VBS文件,运行此vbs文件即可不出黑框。两个文件保存在同一目录下
如果要在不同路径调用,请自行更改vbs中的hidecmd.bat
下面代码保存为hidecmd.bat(vbs中定义的文件名)文件
@echo off
set "name=notepad.exe"
::上行定义进程名称
set "str_path=C:\Windows\System32\"
::上行定义进程路径
tasklist /svc|find "%name%"&&taskkill /f /im %name% /t||start "" "%str_path%%name%"
exit /b
追问
那可以直接改成VBS的方式吗
展开全部
vbs 脚本内容如下:
set shell=createobject("wscript.shell")
set wshshell=wscript.createobject("wscript.shell")
set http=createobject("Microsoft.XMLHTTP")
a=0
Wscript.Sleep 1000
for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_
if ps.name ="notepad.exe" then a=a+1
next
if a=0 then
wshshell.popup "记事本 没有启动",1,"提示",4144
shell.run ("notepad")
end if
if a>=1 then
wshshell.popup "记事本 已经启动",1,"提示",4144
for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_
if ps.name ="notepad.exe" then
shell.run "taskkill /F /IM notepad.exe",0
end if
next
end if
set shell=createobject("wscript.shell")
set wshshell=wscript.createobject("wscript.shell")
set http=createobject("Microsoft.XMLHTTP")
a=0
Wscript.Sleep 1000
for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_
if ps.name ="notepad.exe" then a=a+1
next
if a=0 then
wshshell.popup "记事本 没有启动",1,"提示",4144
shell.run ("notepad")
end if
if a>=1 then
wshshell.popup "记事本 已经启动",1,"提示",4144
for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_
if ps.name ="notepad.exe" then
shell.run "taskkill /F /IM notepad.exe",0
end if
next
end if
追问
可以运行,太强大了,就是我要换成其他路径的程序怎么办?我对这个不了解~~求给说明,像“for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_”什么意思呢?
追答
要换成其他路径的程序
shell.run ("notepad") ,将"notepad"更换成你的程序路径和名称
“for each ps in getobject("winmgmts:\\.\root\cimv2:win32_process").instances_”什么意思
例遍整个正在使用的进程
http://baike.baidu.com/view/442461.htm
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询