我創建了一個新的環境變量來跟蹤可能的故障狀態的狀態,該變量是一個簡單的標誌,稱爲FailFlag
,可以設置或重置,值分別爲FlagIsSet
和FlagIsReset
。要創建環境變量,我從控制面板中打開系統環境變量,並添加一個名爲FailFlag
的新系統變量並將其賦值爲FlagIsReset
。可以讀取但不更新新創建的環境變量
現在,我想以編程方式設置並重置來自C#程序的標誌。我嘗試這個如下:
namespace EnvVars
{
class Program
{
static void Main(string[] args)
{
string value = Environment.GetEnvironmentVariable("FailFlag"); // Here value is seen to be 'FlagIsReset'
if (value == null)
System.Console.WriteLine("Failed to read env variable");
else
Environment.SetEnvironmentVariable("FailFlag", "FlagIsSet");
}
}
}
但是,如果我跑我的程序,然後再次檢查我的系統環境變量,我看到FailFlag
是FlagIsReset
而不是FlagIsSet
,這意味着我的程序未能更新其價值。你能幫我解決一下嗎?
FWIW,我開始的Visual Studio 作爲管理員
@StraightLine *如果您需要不同的存儲範圍,請嘗試使用不同的environmentvariabletarget枚舉* –