标题: [注册表类] 批处理判断注册表是否存在去安装,为啥没有注册表也安装了? [打印本页]
作者: liucainiao 时间: 2024-10-14 09:49 标题: 批处理判断注册表是否存在去安装,为啥没有注册表也安装了?
- @ECHO OFF
- (PUSHD "%~DP0") & (REG QUERY "HKU\S-1-5-19" > NUL 2>&1) || (
- powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs" -WindowStyle hidden && EXIT
- )
-
- REM 执行第一个安装程序
- .\1.exe
- IF %ERRORLEVEL% NEQ 0 (
- ECHO 第一个安装程序安装失败,停止安装第二个程序。
- EXIT /B %ERRORLEVEL%
- )
-
- REM 检查注册表中的 ModelVersion 值
- FOR /F "tokens=2*" %%A IN ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\L\ModelMgr" /v ModelVersion 2^>nul') DO (
- SET "ModelVersion=%%B"
- )
-
- REM 输出 ModelVersion 值以进行调试
- ECHO 检查到的 ModelVersion 为:!ModelVersion!
-
- REM 检查 ModelVersion 是否为空
- IF "!ModelVersion!"=="" (
- ECHO ModelVersion 的值为空,停止安装程序。
- EXIT /B 1
- )
-
- REM 如果 ModelVersion 不为空,执行安装操作
- ECHO ModelVersion 的值为 "!ModelVersion!",开始执行安装操作。
- REM 执行第二个安装程序(只有在第一个成功时才会执行)
- .\2.exe
- IF %ERRORLEVEL% NEQ 0 (
- ECHO 第二个安装程序安装失败。
- EXIT /B %ERRORLEVEL%
- )
-
- ECHO 所有安装程序已成功执行。
复制代码
作者: flashercs 时间: 2024-10-14 13:40
没开变量延迟- @ECHO OFF
- (PUSHD "%~DP0") & (REG QUERY "HKU\S-1-5-19" > NUL 2>&1) || (
- powershell -Command "Start-Process '%~sdpnx0' -Verb RunAs" -WindowStyle hidden && EXIT
- )
- setlocal enableDelayedExpansion
- REM 执行第一个安装程序
- .\1.exe
- IF !ERRORLEVEL! NEQ 0 (
- ECHO 第一个安装程序安装失败,停止安装第二个程序。
- EXIT /B !ERRORLEVEL!
- )
-
- REM 检查注册表中的 ModelVersion 值
- FOR /F "tokens=2*" %%A IN ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\L\ModelMgr" /v ModelVersion 2^>nul') DO (
- SET "ModelVersion=%%B"
- )
-
- REM 输出 ModelVersion 值以进行调试
- ECHO 检查到的 ModelVersion 为:!ModelVersion!
-
- REM 检查 ModelVersion 是否为空
- IF "!ModelVersion!"=="" (
- ECHO ModelVersion 的值为空,停止安装程序。
- EXIT /B 1
- )
-
- REM 如果 ModelVersion 不为空,执行安装操作
- ECHO ModelVersion 的值为 "!ModelVersion!",开始执行安装操作。
- REM 执行第二个安装程序(只有在第一个成功时才会执行)
- .\2.exe
- IF !ERRORLEVEL! NEQ 0 (
- ECHO 第二个安装程序安装失败。
- EXIT /B !ERRORLEVEL!
- )
-
- endlocal
- ECHO 所有安装程序已成功执行。
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |