我們常常為了一些軟體啟動的方便,將一些軟體的文件夾指定到系統的環境變數中,這樣就不需要到指定軟體的bin目錄,運行目錄下啟動(類似於JAVA,Python,Node等命令),直接Win+R、或者cmd直接就可以啟動,但是隨著一個個目錄的添加導致系統的環境變數超出了1024B,這時系統就會發出警告。 ...
我們常常為了一些軟體啟動的方便,將一些軟體的文件夾指定到系統的環境變數中,這樣就不需要到指定軟體的bin目錄,運行目錄下啟動(類似於JAVA,Python,Node等命令),直接Win+R、或者cmd直接就可以啟動,但是隨著一個個目錄的添加導致系統的環境變數超出了1024B,這時系統就會發出警告。
警告: 正保存的數據被裁斷到 1024 字元。 錯誤: 拒絕訪問註冊表路徑。
其實,這個問題很好解決。
首先,你要區分環境變數:
系統環境變數:包含系統啟動,運行的一些變數(安裝完系統就有的),此外,用戶(管理員許可權)可以繼續添加環境變數,這些變數為所有用戶共用。
註冊表路徑:\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
用戶環境變數:允許每個用戶在系統環境的變數基礎上指定自己想要定義的變數,和系統變數相同,但是這些變數只專屬於創建此變數的用戶,其他用戶無法登錄。
註冊表路徑:\HKEY_CURRENT_USER\Environment
例子:
系統有張三、李四兩個用戶都具有管理員許可權,他倆都想在登陸系統後cmd下直接使用JAVA命令,此時只要其中一個用戶登陸系統後,配置好了JAVA的環境變數,那麼他們兩個在登錄後都可以使用。
如果張三說只想自己在cmd下使用JAVA,不想讓李四使用,那麼只需要將JAVA路徑配置到自己的目錄下。(其實電腦已經安裝java,如果李四登錄後想使用,那麼他必須自己再次配置java的路徑,或者直接定位到java的安裝目錄後使用)
當然,如果你是管理員你可以只接設置每個用戶的環境變數,而不用登錄用戶。
比如:張三(管理員)在設置完自己的環境變數後想設置李四的環境變數,只需要打開註冊表[ HKEY_USERS\指定用戶的SID\ Environment]下選擇李四的用戶就可以,但是前提是要知道李四用戶的SID.
有了上面的理解之後我們就有了對應的解決方法:
1.建立一個文件夾D:\Path (文件名隨便)
2.將這個路徑添加到系統環境變數中,或者用戶變數中自己選擇。
3.將一些常用的軟體的快捷方式添加進去(這是我自己的習慣),比如:QQ,WeChat等等,如果感覺桌面快捷方式多,直接塞進這裡,順便改個自己記得住的文件名,這樣可以加快開機後載入桌面的速度,只有你打開D:\Path文件夾,或者系統空閑時時才會刷新其中的圖標。
這時你要是想啟動QQ就直接Win+R輸入QQ就好,或者cmd後執行start qq
註意:比如你想將word,excel等放在D:\Path\Office中,用上面的方式是無法載入的,你必須要將D:\Path\Office加入環境變數中才可以。
4.然後就是一些自己想要的軟體了,建立D:\Path\MySoftware,並添加到環境變數中。
比如我我直接添加abd文件目錄(D:\Program Files (x86)\adb)到環境變數的話系統會報錯:
這時,你只需要將adb下的文件,直接放到D:\Path\MySoftware中,就可以直接在cmd中運行。其他bat腳本,VB腳本啥的都可以。
通過這種操作方式後,如果你的電腦要重新安裝,你只需要備份D:\Path文件,在重裝完系統後,再將這個文件複製到D盤下,然後設置系統環境變數,如果是快捷方式的話要求你安裝的軟體路徑,同重裝之前的相同,然後就可以向以前一樣了。
其實這種方法的原理就是想已經添加在系統環境變數中的路徑下添加自己的軟體,比如你直接塞在%SystemRoot\System32%(C:\WindowsSystem32)也一樣
如果你不想用這種方法,還是想直接往系統環境變數中添加,有如下方法:
1.將不用的路徑從系統環境變數中移除
2.縮短文件的路徑,比如之前java在D:\Program Files\Java\java8.1中,那你就應該改安裝路徑儘可能的短比如:D:\java8.1
3.直接編輯註冊表,但如果超出限制,一樣會警告。
4.使用批處理腳本在每次啟動前將自己需要的系統變數設置好。
版權 作者:feiquan 出處:http://www.cnblogs.com/feiquan/ 版權聲明:本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。 大家寫文都不容易,請尊重勞動成果~ 這裡謝謝大家啦(*/ω\*)