![](/img/trans.png)
[英]Get write access to local_machine\software in the registry for .net application
[英]How to allow registry (write) access fo my .NET application?
我收到錯誤消息:
請求的注冊表訪問被拒絕
當嘗試在打開UAC的情況下寫入注冊表鍵時:
RegistryKey.OpenRemoteBaseKey(Microsoft.Win32.RegistryHive.LocalMachine, "")
tawkey.OpenSubKey(x, true).SetValue(X, V, RegistryValueKind.DWord)
我必須在我的軟件安裝期間運行“subinacl /subkeyreg HKEY_LOCAL_MACHINE\PathToMyKeys... /grant=user=f”嗎? 還是有其他方法可以訪問我的注冊表項?
謝謝你。
如果您希望寫入HKLM
下的密鑰,則需要一個提升的進程。 這是通過在應用程序清單中將requestedExecutionLevel
設置為requireAdministrator
來實現的。
進行此更改意味着您的應用程序每次運行時都會顯示一個 UAC 提升對話框。 這無疑會讓人惱火,所以這里有一些避免這種刺激的選擇:
HLKM
以外的地方。HLKM
的寫入。HLKM
,請安排您按需提升。選項 3 需要稍加闡述。 進程一旦啟動就無法提升。 您只能在流程開始時提升。 因此,為了實現選項 3,您需要該功能存在於單獨的進程中或進程外 COM 服務器中。 如果您沿着這條路線走 go,請記住在任何導致 UAC 對話框的 UI 元素上包含盾牌圖標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.