簡體   English   中英

如何使用 C# .NET 觸發環境重新加載?

[英]How to trigger environment reload using C# .NET?

我正在嘗試為我的應用程序編寫自定義安裝程序。 我正在使用 C# 制作此安裝程序。其中一個功能是將我的應用程序目錄添加到 PATH。

但是,當我這樣做時,我必須重新啟動計算機才能訪問更新后的 PATH 變量。 當使用像 Inno setup 這樣的設置腳本工具時,我可以將它設置為以某種方式重新加載環境以立即訪問更新后的 PATH,而無需重新啟動。 如何使用 C# 復制此行為?

如果這是一個重復的問題,我很抱歉,但我無法找到任何相關信息。

原來我是想修改注冊表。 您可以使用System.Environment立即訪問它

var name = "PATH";
var scope = EnvironmentVariableTarget.User; // or User
var oldValue = Environment.GetEnvironmentVariable(name, scope);
var newValue = oldValue + @";C:\Path\To\Add";

更改 Windows 中的 PATH 變量不需要重新啟動。 一個簡單的解決方案是將包含可執行文件的目錄及其使用的任何文件夾添加到 PATH 變量中。 例如:

System.Environment.GetFolderPath(System.Environment.SpecialFolder.ProgramFilesX86).ToString() + "" 其他程序文件 (x86) on " + System.Environment.OSVersion.Name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM