环境变量速切脚本【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
相关推荐
comedate2 小时前
Windows / Linux GPU 虚拟内存布局差异与 CUDA 越界访问行为
linux·windows·mmu·cuda 越界访问
IT技术分享社区4 小时前
Windows桌面时钟推荐:始终置顶、无级缩放、支持全屏游戏显示时间
windows·微软技术·电脑技巧·桌面美化·电脑干货
公子小六9 小时前
基于.NET的Windows窗体编程之WinForms音频控件
windows·microsoft·c#·.net·音视频·winforms
诸神缄默不语12 小时前
如何在Win11系统中找到是哪个程序占用了指定端口
windows
FL162386312915 小时前
Halcon26.05下载安装教程
windows
ly768915 小时前
Windows 操作系统详解:从系统架构、文件管理到安全与运维
windows·安全·系统架构
2601_9623649715 小时前
踩坑提醒!带摄像头≠支持 Windows Hello 人脸解锁
windows
码农爱学习17 小时前
ClaudeCode搭配DeepSeek在Windows和Linux中的安装教程
linux·运维·windows
WA内核拾荒者2 天前
WhatsApp账号运营SOP的可视化编排与流水线监控
大数据·数据库·windows
Java小白笔记2 天前
Windows系统免软件命令激活
java·网络·人工智能·windows·ai·ai编程