我有一个脚本可以找到特定的已安装软件,但我也无法获取软件的版本。例如,假设我收到了所有安装的Microsoft软件的列表。这是我到目前为止:批处理文件以获取特定的已安装软件以及版本
echo software installed > software_list.txt
echo ================= >>software_list.txt
reg export HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall temp1.txt
find "Microsoft" temp1.txt| find "DisplayName" > temp2.txt
for /f "tokens=2,3 delims==" %%a in (temp2.txt) do (echo %%a >> software_list.txt)
start notepad "software_list.txt"
del temp1.txt temp2.txt
我怎样才能从reg出口获得DisplayVersion?如果我将DisplayName替换为DisplayVersion,则甚至找不到任何内容。或者,我还有另外一个途径吗?
有没有办法让Window Installer安装的程序的安装路径?我的程序是一个Interop Excel插件,只包含.dlls并且没有可执行文件.exe。看到我的添加/删除程序和_wmic产品获取名称,版本_列表,但不是通过命令_where_ – Kenny
@Kenny:尝试'InstallLocation'属性,例如'wmic获取名称,InstallLocation'。 – Helen
不幸的是InstallLocation是空的。由于类似的属性列表,我感觉_wmic_从_HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall_获取信息。你也可以从这个注册表项看到许多有_InstallLocation_missing。 – Kenny