:获取 Microsoft Office 安装路径
Setlocal Enabledelayedexpansion
for /f "delims=\ tokens=5,*" %%a in ('reg query HKLM\SOFTWARE\Microsoft\Office /f "." /k 2^>nul') do (
for /f "skip=1 tokens=2,* delims= " %%b in ('reg query HKLM\SOFTWARE\Microsoft\Office\%%~a\Word\InstallRoot /v Path 2^>nul') do (
set "WordPath=%%~c"
)
)
if defined WordPath (set "WordPath=%WordPath:root\Office16=Office16%") else (
echo 未检测到当前系统安装有 Microsoft Office 软件,请直接关闭或按任意键退出 ......
pause >nul
goto :eof
)
:获取 Microsoft Office 版本
for /f "tokens=4 delims=, " %%i in ('cscript "%WordPath%ospp.vbs" /dstatus') do (set /a n =1 & if !n! equ 3 set "V=%%i")
cd /d "%~dp0"
title ===备份恢复 Microsoft Office 2010、2013、2016、2019激活文件===
echo.
echo 请选择你需要的功能
echo.
:begin
set "xxx="&set /p xxx=1.备份 2.恢复:
if "%xxx%" neq "1" if "%xxx%" neq "2" cls&goto begin
cls&goto xx%xxx%
:xx1
if /i !V!==14 goto 2010b
if /i !V!==15 goto 2013b
if /i !V!==16 goto 2016b
if /i !V!==19 goto 2019b
echo 未检测到系统安装有Office软件,请直接关闭或按任意键退出 ......
pause >nul
goto :eof
:xx2
if /i !V!==14 goto 2010a
if /i !V!==15 goto 2013a
if /i !V!==16 goto 2016a
if /i !V!==19 goto 2019a
echo 未检测到系统安装有Office软件,请直接关闭或按任意键退出 ......
pause >nul
goto :eof
:2010b
for /f "tokens=3" %%a in ('wmic os get Caption') do if /i "%%a" neq "" set Win=%%a
if /i %Win%==7 echo 当前系统为 Windows 7&goto :2010Win7b
if /i %Win%==8 echo 当前系统为 Windows 8&goto :2010Win7b
if /i %Win%==8.1 echo 当前系统为 Windows 8.1&goto :2010Win7b
if /i %Win%==10 echo 当前系统为 Windows 10&goto :2010Win7b
goto :eof
:2013b
for /f "tokens=3" %%a in ('wmic os get Caption') do if /i "%%a" neq "" set Win=%%a
if /i %Win%==7 goto :2013Win7b
if /i %Win%==8 goto :2013Win8b
if /i %Win%==8.1 goto :2013Win8.1b
if /i %Win%==10 goto :2013Win10b
goto :eof
:2016b
for /f "tokens=3" %%a in ('wmic os get Caption') do if /i "%%a" neq "" set Win=%%a
if /i %Win%==7 goto :2016Win7b
if /i %Win%==8 goto :2016Win8b
if /i %Win%==8.1 goto :2016Win8.1b
if /i %Win%==10 goto :2016Win10b
goto :eof
:2010a
net stop osppsvc
for /f "tokens=3" %%a in ('wmic os get Caption') do if /i "%%a" neq "" set Win=%%a
if /i %Win%==7 echo 当前系统为 Windows 7&goto :2010Win7a
if /i %Win%==8 echo 当前系统为 Windows 8&goto :2010Win7a
if /i %Win%==8.1 echo 当前系统为 Windows 8.1&goto :2010Win7a
if /i %Win%==10 echo 当前系统为 Windows 10&goto :2010Win7a
goto :eof
:2013a
for /f "tokens=3" %%a in ('wmic os get Caption') do if /i "%%a" neq "" set Win=%%a
if /i %Win%==7 goto :2013Win7a
if /i %Win%==8 goto :2013Win8a
if /i %Win%==8.1 goto :2013Win8.1a
if /i %Win%==10 goto :2013Win10a
goto :eof
:2016a
for /f "tokens=3" %%a in ('wmic os get Caption') do if /i "%%a" neq "" set Win=%%a
if /i %Win%==7 goto :2016Win7a
if /i %Win%==8 goto :2016Win8a
if /i %Win%==8.1 goto :2016Win8.1a
if /i %Win%==10 goto :2016Win10a
goto :eof
@echo off
@echo 重要说明
echo.
@echo Windows 7专业版与企业版的激活文件不能通用,错误使用不同版本的激活文件,系统安装的网络打印机将不能正常打印,系统自带的截图工具不能使用,windows的个性化设置也不能使用,打开个性化设置会出现“此页在该版本的Windows中不可用”。
echo.
cd /d "%~dp0"
title ===备份恢复 Windows 7 系统激活文件===
echo.
echo.
echo.
@echo 请选择你需要的功能
echo.
:begin
set "xxx="&set /p xxx=1.备份 2.恢复:
if "%xxx%" neq "1" if "%xxx%" neq "2" cls&goto begin
cls&goto xx%xxx%
:xx1
@echo off
copy %windir%\System32\spp\tokens\pkeyconfig\pkeyconfig.xrm-ms
copy %windir%\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform\tokens.dat
copy %windir%\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform\Cache\cache.dat