2017-08-04 87 views
-1

我有一箇舊的Windows程序,從註冊表中讀取信息,像這樣:的Windows 10的註冊表訪問

CRegKey rkey; 

if(rkey.Open(HKEY_LOCAL_MACHINE, "SOFTWARE\\xxx\\yyy", KEY_READ) == ERROR_SUCCESS) 
{ 
    ... 
} 

在Windows 10鎖定的用戶帳戶,失敗!

它甚至不能讀取註冊表,至少不是它的那部分。

我看了微軟的支持網站,我找不到它解決這個問題。

任何人都可以指向我的信息,或者只是告訴我,從Windows(C++)程序訪問註冊表是如何受到UAC在Windows 10中的影響的?

+1

那麼,修復你的代碼,你不能告訴*爲什麼*它失敗了。谷歌「Windows註冊表重定向器」。 –

+0

使用'regedit':在樹窗格中右鍵單擊您感興趣的節點並檢查其權限。您的舊Windows程序很可能假設它以管理員權限運行,在Windows 10計算機上它只具有用戶權限。 –

+2

您可以指定您嘗試訪問的註冊表項嗎? – Asesh

回答

0

我需要收回這個問題。進一步的調查顯示,用戶帳戶可以在註冊表中讀取HKLM等,這不是問題。實際上,安裝程序已經編寫了我在HKCU(當前用戶)下尋找的註冊表項,其中用戶帳戶同時具有R和W權限。 ...所以,我不必要地責備Windows 10用戶模式。問題似乎是從該計劃到另一個計劃的溝通沒有成功。我們會研究一下。對於在調查中發現問題的原因並不是問題的根源,我表示抱歉。

+0

要撤消該問題,只需將其刪除即可。有一個鏈接可以在你的問題下執行此操作。 – lurker