使用VBScript實現設置系統環境變量的小程序


  本人有點桌面潔癖,桌面上只放很少的東西,很多軟件都用快捷鍵調出。最近頻繁用到一個軟件,我又不想放個快捷方式在桌面,也不想附到開始菜單,於是乎想將其所在目錄附加到系統環境變量Path上,以后直接在運行中輸入文件名快速調出。但我又厭倦了win7 計算機-屬性-系統保護-高級-環境變量-新建/選擇並編輯 這種設置方式,於是我打開了命令行,在網上搜到了使用 set name = path 這種設置的方式,但是后來發現這樣設置只對當前窗口有效,並不能達到我一勞永逸的預期。后來在網上又找到了用vbs腳本寫的一段設置系統環境變量的代碼,我稍加改動便成了一個可以方便地設置系統環境變量的小工具(*.vbs文件)。同時,為了追求程序的簡化,本程序並沒有集成諸如刪除等功能,也沒有在外觀上做什么額外的調整,對於欲求不滿的客官完全可以在此基礎上進行擴展改進,本程序就是為了突出其小巧輕便、簡單實用的特點。現將代碼貼出來共享,大伙只需在記事本拷下這段代碼另存為“設置系統環境變量.vbs”(當然,文件名可以自己取),以后要設置系統環境變量,雙擊這個文件就可以直接新增或者在原有變量對應的值上附加了,非常方便。

  

 1 '--------定義設置系統環境變量的方法---------
 2 Set pSysEnv = CreateObject("WScript.Shell").Environment("System")
 3 Function IsMatch(Str, Patrn)
 4   Set r = new RegExp
 5   r.Pattern = Patrn
 6   IsMatch = r.test(Str)
 7 End Function
 8 Sub SetEnv(pPath, pValue)
 9     Dim ExistValueOfPath
10     If pValue <> "" Then
11      ExistValueOfPath = pSysEnv(pPath)
12  If Right(pValue, 1) = "\" Then pValue = Left(pValue, Len(pValue)-1)
13  If IsMatch(ExistValueOfPath, "\*?" & Replace(pValue, "\", "\\") & "\\?(\b|;)") Then Exit Sub 
14  If ExistValueOfPath <> "" Then pValue = ";" & pValue
15  pSysEnv(pPath) = ExistValueOfPath & pValue 
16     Else
17  pSysEnv.Remove(pPath)
18     End If
19 End Sub
20 
21 '--------獲取輸入參數設置系統環境變量---------
22 Do
23 InputKey = InputBox("請輸入系統變量名")
24 If InputKey = VbEmpty Then
25     MsgBox "已取消!" 
26     Wscript.Quit
27 Else
28     If InputKey <> "" Then InputValue = Inputbox("請輸入系統變量值"): Exit Do
29 End If
30 Loop
31 If InputValue = VbEmpty Then
32     MsgBox "已取消!" 
33     Wscript.Quit
34 Else
35 SetEnv InputKey,  InputValue 
36 End If
37 MsgBox "系統變量設置成功!"

下面是程序執行畫面,以供預覽。

輸入系統變量名:

輸入系統變量值:

設置成功:

用戶取消:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM