cmd命令如何判断 是否已安装一个软件?
这个判断起来有点难。
。
。
不过也不是没有可能,就是麻烦我的思路是,因为安装一个软件,一般会在两个地方找到,1,开始菜单2,添加删除程序列表既然如此,开始菜单的判断路径为:'C:\Documents and Settings\All Users\Start Menu\Programs'而一般情况下,有些程序是不会显示在开始菜单,那么就只能判断添加删除程序列表了。
。
而添加删除程序列表,只能去读注册表(注册表记录了电脑的所有信息,只要用好了,会很强大的)。
添加删除程序列表在注册表中的位置为:'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall '你只能一个key,一个key的去读 'DisplayName'的键值了。
。
。
不过,就算读取了键值,其显示名称不一定也是这个软件的全称或者什么的。
。
。
这个你得用用正则表达式了。
。
。
我不知道cmd能用正则表达式不。
。
。
如何利用dos命令来检测软件是否安装成功
1、通过判断文件是否存在检测例,以判断115客户端为例:(===内保存为BAT文件运行)============================================@echo offif exist C:\Progra~1\115\UDown\Udown.exe GOTO OK@ECHO 115客户端安装失败。
GOTO END:OK@ECHO 115客户端安装成功。
:end@echo.=====================================2、注册表检查方法:同样以115客户端为例:(===内保存为BAT文件运行)============================================================@echo onfor /f "tokens=3" %%i in ('REG QUERY HKLM\SOFTWARE\Microsoft\windows\CurrentVersion\Uninstall\UDown /v DisplayName^| find /i "115"') do SET GETFILE1=%%iif "%GETFILE1%"=="115优蛋" GOTO OK@ECHO 115客户端安装失败。
GOTO END:OK@ECHO 115客户端安装成功。
:end@echo.===================================================
bat 如何检测 某软件已安装
展开全部在Windows下这个很难,因为jar程序都是要java.exe或javaw.exe来加载的,所以一旦运行,进程中就是显示java.exe了,但其他java环境程序也都显示java.exe,所以通过进程没法判断。
不过有个折衷的办法,您可以修改demo.jar,在程序启动时,在某个特定位置写一个demo_running.st的文本文件,在程序退出时再删除它。
这样就可以用另一个程序,判断是否存在这个文件,来确定demo.jar是否运行了。
批处理判断一个文件是否存在可以这样写:@if exist c:\temp\demo_running.st (@echo demo.jar is running) else (@echo demo.jar is not running)上面这段放在批处理文件中也行。
...
软件安装批处理
我刚才在回答了个问题,那个问题也和楼主的很相像,所以把代码和方法复制来了。
你仔细看看制作方法。
把要安装软件的所有程序以及注册信息打包。
步骤一:在一台电脑上安装上你想要一键安装的软件步骤二:找到这些软件的安装目录,用 “路径.TXT” 分别记录下软件程序的主目录(程序的第一级目录),格式就用:第1软件的主目录名=目录的路径第2软件的主目录名=目录的路径QQ=e:\QQ .......步骤三: 把软件的主目录复制到桌面放着,也把“路径.TXT”放在桌面。
步骤四:运行注册表(regedit.exe),按出注册表查找("Ctrl+F"键),只勾选“项”的查找项,查找第一个软件的根目录的名字,查找出的名称如果显示的和符合的一致或大致,找不到就按F3,直到找到。
找到就在注册表的主键上右键,选择导出并命名为“QQ(主目录名).reg(把它放入到主目录里)步骤五:把桌面上的“QQ”和“路径.TXT”打包为.rar压缩文件。
当然代码也重写了:@echo off&setlocal EnableDelayedExpansion::软件一键安装 code by 秋日.枫叶set /p rar=拖入安装包:rd /q /s c:\anzhuang&md c:\anzhuang"c:\Program Files\WinRAR\Rar.exe" x -t -o-p %rar% c:\anzhuangcd /d c:\anzhuangfor /f "tokens=1,2 delims==" %%i in (路径.TXT) do (md "%%j"copy /y "%%i" "%%j"pushd "%%j"echo 开始注册文件...for /f "tokens=*" %%a in ('dir /s /b *.dll *.ocx') do (regsvr32 /s "%%~fa")if exist "%%i.reg" regedit.exe /s "%%i.reg"popd)echo 软件安装成功!&& cd\rd /q /s c:\anzhuang>nul pause最后说明下 ,有多半软件安装都有特殊性,可能未必能成功。
上面这里只是提供个思路,实际还是要楼主来亲自测试的!!~这是我的回答,谢谢采纳!!
批处理判断一个程序是否运行
在Windows下这个很难,因为jar程序都是要java.exe或javaw.exe来加载的,所以一旦运行,进程中就是显示java.exe了,但其他java环境程序也都显示java.exe,所以通过进程没法判断。
不过有个折衷的办法,您可以修改demo.jar,在程序启动时,在某个特定位置写一个demo_running.st的文本文件,在程序退出时再删除它。
这样就可以用另一个程序,判断是否存在这个文件,来确定demo.jar是否运行了。
批处理判断一个文件是否存在可以这样写:@if exist c:\temp\demo_running.st (@echo demo.jar is running) else (@echo demo.jar is not running)上面这段放在批处理文件中也行。
怎样用bat文件判断目标程序是否打开
需要知道程序运行后的进程名,比如QQ.exe@echo offfor /f "skip=3 delims=" %%a in ('tasklist') do (echo %%a|findstr /i /c:"QQ.exe"&&exit)start "" "QQ程序路径"&&exitQQ程序路径实例:D:\Program Files\Tencent\QQ\Bin\QQ.exe
DOS批处理可以获取当前系统的已安装的软件列表吗?
第一种方法:网上有专门的安装程序封装工具,这是肯定的,但要找很麻烦;第二种方法:利用rar 压缩包程序: a、在压缩的文件夹上点右键,选择“添加到压缩文件”; b、在出来的RAR窗口右边下部选择“创建自解压格式压缩文件”,这样点确定就可以创建自解压格式的RAR文件,如果双击这个文件就会自动解压; c、如果想设置解压之后自动运行某个程序,比如安装文件,那就可以点顶部的“高级”选项卡,然后点右边中间的“自解压选项”,再在里面的“解压后运行”下面的输入框里输入想要运行的程序(如制作麦咖啡 安装包的时候,在此输入Setup.exe,就可以了);d、若要它实现静默安装,则在想要运行的程序名后面加\s(s为静默安装参数,各种软件的静默安装参数,不尽相同)
bat判断一个文件是否存在
使用BAT命令判断文件是否存在。
范例:@echo off if not exist c:\Temp\1.txt goto nofile --1goto start --2:nofile copy \\xp\temp\111.txt c:\temp\1.txt --3:start mstsc.exe --4注释:1:此处的意思是判断如果不存在C:\TEMP\1.TXT 则跳转至自定义的NOFILE的脚本,如果存在刚跳过。
执行下一步。
2:执行自定义START脚本。
3:此处为执行第一句判断的后续内容,(复制网络路径\\SERVER\TEMP\111.TXT到当前机器中的C:\TEMP目录中并改名为1.txt。
4:执行MSTSC.exe程序。
转载请注明出处51数据库 » bat判断软件是否安装