環境變數設定





琥珀
2010-11-07, 07:17 PM
Vista/7 的環境變數設定,有些和 2000/XP 的不同。找了參考資料,想把適合的設定給 2000/XP 使用。起初是用手動設定,驗證後感到滿意,便將設定寫成批次檔,方便日後修改。

此範例腳本,加入了 %LOCALAPPDATA% 變數,以及對 .msc 檔案的支援。


@echo off

reg add "HKCU\Environment" /v LOCALAPPDATA /t REG_EXPAND_SZ /d "%%USERPROFILE%%\Local Settings\Application Data" /f > nul

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\certmgr.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\certmgr.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ciadv.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\ciadv.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\comexp.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\Com\comexp.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\compmgmt.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\compmgmt.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\devmgmt.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\devmgmt.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\dfrg.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\dfrg.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\diskmgmt.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\diskmgmt.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\fpmmc.exe" /ve /t REG_EXPAND_SZ /d "%%ProgramFiles%%\Common Files\Microsoft Shared\web server extensions\40\bin\fpmmc.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\fsmgmt.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\fsmgmt.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\gpedit.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\gpedit.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\iis.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\inetsrv\iis.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\lusrmgr.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\lusrmgr.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ntmsmgr.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\ntmsmgr.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\ntmsoprq.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\ntmsoprq.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\rsop.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\rsop.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\secpol.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\secpol.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\services.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\services.msc" /f > nul
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\wmimgmt.exe" /ve /t REG_EXPAND_SZ /d "%%windir%%\system32\wmimgmt.msc" /f > nul

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PATHEXT /t REG_SZ /d ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC" /f > nul




FYI
2010-11-08, 04:59 PM
請問使用時機為何?
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PATHEXT /t REG_SZ /d ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC" /f > nul
把 ".MSC" 挪到 ".EXE" 之前不就夠了嗎?
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PATHEXT /t REG_SZ /d ".COM;.MSC;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH" /f > nul

琥珀
2010-11-12, 12:00 AM
起初的設定是將 .msc 放在最前面,測試後不符合希望的結果。

再提供一個檔案。這是為 Windows 2000 伺服器家族寫的,不過 XP/2003 同樣能使用。