我正在尝试使用以下命令检索Microsoft Office版本:
reg query "HKEY_CLASSES_ROOT\Word.Application\CurVer"
返回以下输出:
HKEY_CLASSES_ROOT\Word.Application\CurVer
(Default) REG_SZ Word.Application.15
我需要解析输出并使用下表匹配版本,并将最终版本粘贴到文本文件中。
Office 97 - 7.0
Office 98 - 8.0
Office 2000 - 9.0
Office XP - 10.0
Office 2003 - 11.0
Office 2007 - 12.0
Office 2010 - 14.0
Office 2013 - 15.0
Office 2016 - 16.0
我该怎么做?
答案 0 :(得分:0)
@echo off
for /f "tokens=5* skip=1 delims=. " %%a in ('reg query "HKEY_CLASSES_ROOT\Word.Application\CurVer"') do set "wver=%%a.0"
for %%# in ("Office 97-7.0" "Office 98-8.0" "Office 2000-9.0" "Office XP-10.0" "Office 2003-11.0" "Office 2007-12.0" "Office 2010-14.0" "Office 2013-15.0" "Office 2016-16.0") do (
for /f "tokens=1* delims=-" %%a in ("%%~#") do (
if %%b equ %wver% (
set ov=%%a
)
)
)
echo %ov%
但是你有相当旧版本的MS Office,它只能安装在{x}命令不可用的windows xp(甚至是旧版本的Windows)上。因此,您还可以检查使用reg
命令的this来确定办公室版本
答案 1 :(得分:0)
我在你之前提供了一个类似的答案,虽然看似被忽略了,但在Outlook上的问题。
可能有一种方法使用注册表(尽管仅适用于Office 2007以上):
1.0000001
尚未经过测试,因为我无法证明任何Microsoft Office产品的成本。