2

我需要确定是否安装了 dot.net 4.5,如果没有安装它。我无法检查该目录是否存在,因为它使用与 4.0 相同的目录。我发现如果我将以下内容放入 .bat 文件中,它会显示版本。

wmic /namespace:\root\cimv2 path win32_product where "name like '%%.NET%%'" 获取版本

但我需要在某种 if 语句中执行此操作,以便我可以在它为 false 时运行 exe。

有人可以帮忙吗?

4

2 回答 2

2

打赌你它不显示版本。这确实

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)

在获取之前添加了空格(我的空格键有问题)。

于 2013-10-15T11:52:16.320 回答
2

我找到了这篇MSDN 文章。

REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP" /s|FIND " 版本"|FIND "4.5."||ECHO 未找到!开始设置!

此命令将检查“版本”“4.5”的注册表子键。您可以ECHO ...用 install 命令替换,或GOTO批量替换以进行进一步处理。

于 2013-10-15T12:19:54.247 回答