如何访问 UWP 应用程序中的注册表项?

How to access registry key in a UWP app?

我想通过 UWP 应用程序访问 windows10 注册表项。 密钥为:\HKEY_LOCAL_MACHINE\SOFTWARE\MyCompanyName\MyName 我找不到任何函数调用来完成它。 请指出我该怎么做? 谢谢,

如果您的应用是纯 UWP 应用,这是不可能的。 UWP 应用程序的构建目标是轻量级并尽可能避免注册表,因此您的应用程序根本无法访问注册表(尽管有些注册表项是在应用程序安装时由系统创建的,例如 URI 协议注册等。 ).

如果您确实需要访问注册表并且不需要在 Microsoft Store 上发布您的应用程序,您可以实施 Brokered Windows Runtime Component。这允许您从 UWP 调用 full-trust .NET Framework 库,而 UWP 又可以访问注册表。但是,使用 Brokered Components 的应用将无法通过认证。

最后,如果您的应用是 UWP 桌面桥应用,您可以访问注册表 - 请参阅 documentation

您可以从从 UWP 应用程序启动的 Win32 runFullTrust 后台进程读取注册表值,并且可以从 "elevated" 在 HKEY_LOCAL_MACHINE 配置单元中写入值从该 runFullTrust 进程启动的 Win32 应用程序。

这些技术非常强大,在从 Windows 商店部署的 UWP 应用程序中使用它们需要 Microsoft 的特殊审查和许可。这些技术由 OEM 使用,但不仅限于他们。如果你有充分的理由并且能够解释清楚,你很可能会获得批准。

我已经写了一个示例和文章来准确说明如何执行此操作,您可能会找到它 here