批处理脚本,用于检查注册表项中的Office版本并创建新的Outlook配置文件

时间:2016-03-17 13:59:10

标签: batch-file outlook profile gpo

我有100台具有不同Office版本的PC,我想为所有这些拥有GPO的PC用户创建一个新的Outlook配置文件。所以我需要一个批处理脚本来检查注册表项中的Office版本(可能使用reg query HKEY_CLASSES_ROOT\Word.Application\CurVer),然后创建一个新的注册表项。
示例:

reg add "HKCU\Software\Microsoft\Office\16.0\Outlook\Profiles\NewProfile"
reg add "HKCU\Software\Microsoft\Office\16.0\Outlook" /v DefaultProfile /t REG_SZ /d "NewProfile" /F

我试过了:

@Echo
reg query "HKEY_CLASSES_ROOT\Word.Application\CurVer" "(Default)" | Find "Word.Application.16" IF %ERRORLEVEL% EQU 1 goto first IF %ERRORLEVEL% EQU 0 goto second goto end
:second
reg add "HKCU\Software\Microsoft\Office\16.0\Outlook\Profiles\NewProfile"
reg add "HKCU\Software\Microsoft\Office\16.0\Outlook" /v DefaultProfile /t REG_SZ /d "NewProfile" /F
goto end
:first
goto end
:end
@exit

但它给出了一个错误:

  

错误:语法无效。输入" REG QUERY /?"用法。

也许有人知道问题出在哪里?

1 个答案:

答案 0 :(得分:0)

尝试这样:

@Echo
reg query "HKEY_CLASSES_ROOT\Word.Application\CurVer" | (
    Find "Word.Application.16"  >nul 2>&1 ) && (
        goto :second
    ) || (
        goto :first
    )
:second
reg add "HKCU\Software\Microsoft\Office\16.0\Outlook\Profiles\NewProfile"
reg add "HKCU\Software\Microsoft\Office\16.0\Outlook" /v DefaultProfile /t REG_SZ /d "NewProfile" /F
goto :end
:first
goto end
:end
@exit