這裏是上下文。我們使用我們的應用程序來設置WMI的許多功能,包括環境變量。使用WMI設置環境變量不起作用,直到我們繼續環境變量並按下確定
我們使用這個代碼(簡體),當我們打開一個命令提示符,我們沒有看到環境變量的值來設置可變
ManagementClass envClass = new ManagementClass(this.oConnector.Scope, new ManagementPath(WMIHelper.Win32Environment), null);
ManagementObject mo = envClass.CreateInstance();
mo["Name"] = variable;
mo["UserName"] = user;
mo["VariableValue"] = value.Trim();
mo.Put();
的環境現在。如果我去打開計算機屬性並進入「環境變量」頁面,那麼它就在那裏。我按兩次確定,重新打開一個命令提示符,變量突然在那裏。
有人知道爲什麼會發生這種情況嗎?這幾乎就像在放置環境變量之後我們必須做其他事情來強制刷新或者其他東西。
感謝
在原始的Windows應用程序,你需要做到這一點。將lParam設置爲字符串「Environment」來廣播WM_ SETTINGCHANGE消息。不確定WMI是什麼。 –