警告: 正保存的數據被裁斷到 1024 字元。 錯誤: 拒絕訪問註冊表路徑。

来源:https://www.cnblogs.com/feiquan/archive/2019/03/03/10468551.html
-Advertisement-
Play Games

我們常常為了一些軟體啟動的方便,將一些軟體的文件夾指定到系統的環境變數中,這樣就不需要到指定軟體的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/

版權聲明:本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。

大家寫文都不容易,請尊重勞動成果~ 這裡謝謝大家啦(*/ω\*)

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 單層淺拷貝 單層深拷貝 結論一: 不管深拷貝還是淺拷貝對 不可變數據類型 都是引用記憶體地址 不管深拷貝還是淺拷貝對 可變數據類型 都是會重新創建新的記憶體空間 淺拷貝嵌套 深拷貝嵌套 結論二: 淺拷貝: 1. 外層是不可變類型、不管內層是否可變都是引用拷貝 2. 外層是可變類型,不管內層是否可變都會從 ...
  • 在上一篇文章(.NET Core開源行動:一鍵創建Excel Add-in) 中我給大家展示了一套為Office 365 Add-in開發人員準備的模板庫,你可以通過 dotnet new excel & dotnet run 命令即可完成一個新的Add-in的創建和運行。 關於如何載入這個Add-... ...
  • 沒有 docker 部署的程式是不完整的,在寫了 IIS/Centos/Supervisor 3篇托管介紹文章後,終於來到了容器化部署 ...
  • 這篇文章,我將帶領大家學習HTML Helper。【PS:上一篇-->5.ASP.NET MVC 中的Area【區域】是什麼】 HTML Helpers是用來創建HTML標簽進而創建HTML控制項的。HTML Helper僅僅是一個返回HTML字元串的方法。ASP.NET MVC 中有三種HTML H ...
  • 微軟拋棄了System.Data.OracleClient,在VS2012中使用 System.Data.OracleClient連接ORACLE資料庫就會出現異常,本文介紹了在VS2012中直接引用Oracle.ManagedDataAccess.dll庫文件連接訪問ORACLE資料庫。 ...
  • 大家好,這篇文章,我將向大家介紹ASP.NET MVC的模型視圖綁定,ASP.MVC的模型綁定分為兩種:一種是動態綁定【Dynamic Binding】;還有一種就是強類型綁定【Strongly typed binding】;【PS--上一篇文章:3.怎樣將ASP.NET MVC應用程式發佈到IIS ...
  • 大家好,上一篇對ASP.NET MVC 有了一個基本的認識之後,這一篇,我們來看下怎麼從頭到尾創建一個ASP.NET MVC 應用程式吧。【PS:返回上一篇文章:1.開始學習ASP.NET MVC】 第一步:開打VS2017,選擇【文件】-->【新建】-->【項目】,然後在彈出來的方框中,按照下麵的 ...
  • 調試機:win10 1809 虛擬機: win7 windbg屬性設置,在目標後面加上紫色字體參數: "D:\Program Files\Debugging Tools for Windows (x64)\windbg.exe" -b -k com:port=\\.\pipe\com_1,baud= ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...