[英]Edit environment variable in registry
我想從注冊表中讀取所有環境變量,並在Visual Studio 2010 Express中使用C#為它設置一個新值。
因此,我讀取了本地計算機的子項:
SYSTEM\CurrentControlSet\Control\Session Manager\Environment
還有Path
的值。
在讀取Path
值時:
reg = Registry.LocalMachine.OpenSubKey(SUB_KEY_PATH, true);
我得到一個例外,我沒有許可。
因此,我在清單中設置了值:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
但是現在我無法編譯我的項目,因為ClickOnce不支持它。 如何編譯安全級別為requireAdministrator的項目? 我發現的一種解決方案是在沒有requireAdministrator級別的情況下進行編譯,然后更改myproject.exe.manifest中的值。 我是否正確,我總是必須將兩個文件(清單和exe文件)都復制到另一台計算機上才能正確運行? 是否可以通過編譯將信息放入exe文件?
如果要在安裝過程中提升高度,則不能使用ClickOnce。 那是設計選擇。 因此,您的選擇是:
PATH
環境,而不是系統范圍的變量。 此選項與ClickOnce的每用戶哲學完全兼容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.