我需要确定是否安装了 dot.net 4.5,如果没有安装它。我无法检查该目录是否存在,因为它使用与 4.0 相同的目录。我发现如果我将以下内容放入 .bat 文件中,它会显示版本。
wmic /namespace:\root\cimv2 path win32_product where "name like '%%.NET%%'" 获取版本
但我需要在某种 if 语句中执行此操作,以便我可以在它为 false 时运行 exe。
有人可以帮忙吗?
我需要确定是否安装了 dot.net 4.5,如果没有安装它。我无法检查该目录是否存在,因为它使用与 4.0 相同的目录。我发现如果我将以下内容放入 .bat 文件中,它会显示版本。
wmic /namespace:\root\cimv2 path win32_product where "name like '%%.NET%%'" 获取版本
但我需要在某种 if 语句中执行此操作,以便我可以在它为 false 时运行 exe。
有人可以帮忙吗?
打赌你它不显示版本。这确实
wmic /namespace:\\root\cimv2 path win32_product where "name like '%%.NET%%'" get version
先看词根。
然后使用 Findstr 命令 errorlevel 来决定要做什么。
(wmic /namespace:\\root\cimv2 path win32_product where "name like '%%.NET%%'" get version|findstr /c:"4.5"
If not errorlevel 1 echo sucess&goto :eof)
在获取之前添加了空格(我的空格键有问题)。
我找到了这篇MSDN 文章。
REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP" /s|FIND " 版本"|FIND "4.5."||ECHO 未找到!开始设置!
此命令将检查“版本”“4.5”的注册表子键。您可以ECHO ...
用 install 命令替换,或GOTO
批量替换以进行进一步处理。