环境变量速切脚本【Windows】

保存以下内容为.bat后缀脚本,用管理员身份运行,即可速切环境变量。

暂时不用的环境注释掉,将要切入的环境取消注释,或新写一个。

bash 复制代码
REM echo off

:: 设置路径

@REM set "FWPATH=D:\NK6000_20191108_pxf"
@REM set "FWCCPATH=D:\NK6000_20191108_pxf"
@REM set "FWSRCPATH=D:\svn\nk6000_pxf\PowerSys_pxf"
@REM set "QTDIR=D:\Qt3_3_8_x86"
@REM set "QMAKESPEC=D:\Qt3_3_8_x86\qmake"
@REM set "FWLIBXLPATH=D:\libxl_x86"

@REM set "FWPATH=D:\NK8000_20230908_hj"
@REM set "FWCCPATH=D:\NK8000_20230908_hj"
@REM set "FWSRCPATH=D:\svn\nk9000_huju-AIX\trunk\PowerSys_EN_16Line"
@REM set "QTDIR=D:\Qt4_8_x64-shared"
@REM set "QMAKESPEC=D:\Qt4_8_x64-shared\qmake"
@REM set "FWLIBXLPATH=D:\libxl_x64"

set "FWPATH=D:\NK8500_20260416_kmj"
set "FWCCPATH=D:\NK8500_20260416_kmj"
set "FWSRCPATH=D:\svn\nk8500_kmj\PowerSys"
set "PSLANG=zh"
set "QTDIR=D:\Qt4_8_x64-shared"
set "QMAKESPEC=D:\Qt4_8_x64-shared\qmake"
set "OPENSSLDIR=D:\Qt4_8_x64-shared\openssl"
set "DM_HOME=D:\dmdbms"
set "FWLIBXLPATH=D:\libxl_x64"

@REM :: 修改系统环境变量,写一条广播一条,概率卡顿,已废弃
@REM setx FWPATH "%FWPATH%" /M
@REM setx FWCCPATH "%FWCCPATH%" /M
@REM setx FWSRCPATH "%FWSRCPATH%" /M
@REM setx PSLANG "%PSLANG%" /M
@REM setx QTDIR "%QTDIR%" /M
@REM setx QMAKESPEC "%QMAKESPEC%" /M
@REM setx OPENSSLDIR "%OPENSSLDIR%" /M
@REM setx DM_HOME "%DM_HOME%" /M
@REM setx FWLIBXLPATH "%FWLIBXLPATH%" /M

:: 修改系统环境变量(reg add 直接写注册表,跳过 setx 的 WM_SETTINGCHANGE 广播,避免逐条卡顿)
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v FWPATH /t REG_SZ /d "%FWPATH%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v FWCCPATH /t REG_SZ /d "%FWCCPATH%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v FWSRCPATH /t REG_SZ /d "%FWSRCPATH%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PSLANG /t REG_SZ /d "%PSLANG%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v QTDIR /t REG_SZ /d "%QTDIR%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v QMAKESPEC /t REG_SZ /d "%QMAKESPEC%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v OPENSSLDIR /t REG_SZ /d "%OPENSSLDIR%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v DM_HOME /t REG_SZ /d "%DM_HOME%" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v FWLIBXLPATH /t REG_SZ /d "%FWLIBXLPATH%" /f

:: 广播FWPATH环境变量变更(随便哪个都行),触发刷新所有环境变量,使 reg add 写入的全部注册表值立即生效
powershell -NoProfile -Command "[Environment]::SetEnvironmentVariable('FWPATH',[Environment]::GetEnvironmentVariable('FWPATH','Machine'),'Machine')"

:: 提示用户修改成功
echo 系统环境变量 FWPATH 已修改为: %FWPATH%
echo 系统环境变量 FWCCPATH 已修改为: %FWCCPATH%
echo 系统环境变量 FWSRCPATH 已修改为: %FWSRCPATH%
echo 系统环境变量 PSLANG 已修改为: "%PSLANG%"
echo 系统环境变量 QTDIR 已修改为: %QTDIR%
echo 系统环境变量 QMAKESPEC 已修改为: %QMAKESPEC%
echo 系统环境变量 OPENSSLDIR 已修改为: %OPENSSLDIR%
echo 系统环境变量 DM_HOME 已修改为: %DM_HOME%
echo 系统环境变量 FWLIBXLPATH 已修改为: %FWLIBXLPATH%

:: 等待用户按键后退出
pause
相关推荐
upgrador2 小时前
桌面应用开发:Electron 与 NSIS 的关系、打包流程及 Windows 本地构建实战
javascript·windows·electron
脚踏实地皮皮晨4 小时前
003002004_WPF Panel 基类 官方类定义
开发语言·windows·算法·c#·wpf·visual studio
sukalot4 小时前
windows网络适配器驱动开发-双 STA 连接(下)
windows·驱动开发·stm32
IT小盘14 小时前
12-Prompt不等于一句话-System-User-Context三层结构
java·windows·prompt
PieroPc19 小时前
Python 写的 Windows凭据添加工具 第二版 解决Win11 23H2, 25H2,26H1,共享文件和打印 一部份问题,不是全部!
开发语言·windows·python
feasibility.20 小时前
wsl安装Ubuntu方法(含网络不稳定处理)
linux·运维·windows·ubuntu
我命由我123451 天前
Windows 操作系统 - 符号链接
linux·运维·windows·系统架构·操作系统·运维开发·系统
还是大剑师兰特1 天前
ThinkPad T490 Windows 自动修复失败完整解决步骤
windows·大剑师·t490
小白说大模型1 天前
KMP全栈开发:从Android到AI Agent的技术演进与实践
android·java·人工智能·windows·python