使用Win 8应用程序阅读注册表?

时间:2013-06-11 17:42:24

标签: vb.net windows-8

我正在尝试查看是否可以从Windows 8应用程序中读取注册表。我通常可以使用Registry.GetValue(),但在创建Win 8应用程序时我没有这个选项。进行一些挖掘表明Registry.GetValue()属于Microsoft.Win32命名空间,Win 8应用程序引用属性选项卡中没有该命名空间。

我做了一些谷歌搜索,但我找不到任何具体的证据,你无法阅读注册表。我担心因为沙盒Win 8应用程序而无法做到这一点。

1 个答案:

答案 0 :(得分:4)

如果您真的需要,可以使用互操作服务来实现。

所以导入你需要的WinAPI函数(你可以从PInvoke.net获取签名):

[DllImport("advapi32.dll", CharSet = CharSet.Unicode)]
public static extern int RegOpenKeyEx(UIntPtr hKey, string lpSubKey,
      uint ulOptions, int samDesired, out UIntPtr phkResult);

并围绕它们制作自己的包装。

但据我所知,这是不允许的,您的应用无法通过认证。