簡體   English   中英

如何允許非管理員用戶寫入注冊表項HKEY_LOCAL_MACHINE \\ SOFTWARE \\ SWname \\ Licenses

[英]How to allow non-admin user to write to registry key HKEY_LOCAL_MACHINE\SOFTWARE\SWname\Licenses

我有使用Windows Installer部署的軟件。

在Windows XP上,當我使用非管理員用戶安裝軟件包時,它會要求正確的管理員權限。 然后,我單擊以管理員身份運行,並等待安裝完成。

然后,如果我(非管理員用戶)要寫入注冊表項“ HKEY_LOCAL_MACHINE \\ SOFTWARE \\ SWname \\ Licenses”,則該軟件將引發異常。 訪問被拒絕。

我在源代碼中使用以下代碼:

RegistryKey rk= Registry.LocalMachine.CreateSubKey("SOFTWARE\\"+swName+"\\Licenses", RegistryKeyPermissionCheck.ReadWriteSubTree);

但是,如果我是非管理員用戶,仍然無法訪問注冊表項。

如何允許非管理員用戶對我的軟件下的注冊表項具有寫權限? 喜歡添加許可證嗎?

首先要指出的是為什么您要執行自定義操作而不是使用Windows Installer注冊表表? 每台計算機的安裝是“托管的”或“受信任的”,這意味着后續的維修/重新安裝將自動提升並具有更新注冊表的權限。

您可以使用Windows Installer中的LockPermissions表來放寬對該注冊表項的權限。 假設這樣做是安全和適當的。

暫無
暫無

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

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