蜂箱之间的注册表符号链接

时间:2018-12-05 11:14:32

标签: c++ winapi

谁能解释为什么我可以成功创建此注册表符号链接(使用Win32或本机API函数);

  

链接=>“ hkey_local_machine \ software \ techinc”

     

目标=>“ hkey_current_user \ software \ microsoft”

但是,当我创建此代码时,出现错误5(访问被拒绝);

  

链接=>“ hkey_current_user \ software \ techinc”

     

目标=>“ hkey_local_machine \ software \ microsoft”

我也尝试添加其他“安全描述符”,但这似乎是Windows注册表的硬限制。

我当前正在使用C ++,但我正在阅读其他语言的类似问题。不幸的是,我已经在网上搜寻并找到了NIL。

加强我这一硬性限制的理论的原因是,我可以毫无错误地创建此链接;

  

链接=>“ hkey_current_user \ software \ techinc”

     

目标=>“ hkey_current_user \ software \ microsoft”

如果有人可以验证,将不胜感激。或者也许有一些我还没有尝试过的“特殊”权限,这些权限需要在不同的配置单元之间链接。

1 个答案:

答案 0 :(得分:0)

我的猜测是,这与注册表项重定向有关。 HKCU /软件被重定向; HKLM /软件已共享。

因此(手动操作)如果您使用的是重定向密钥,则由于它位于不同的物理配置单元中,因此您无法链接到共享密钥。

也许。

这一切取决于您在64位Windows上运行32位程序。

https://docs.microsoft.com/en-us/windows/desktop/WinProg64/shared-registry-keys#redirected-shared-and-reflected-keys-under-wow64