无法从注册表读取 - HKEY_CLASSES_ROOT,如果不在管理员模式下运行 [英] Cannot read from registry - HKEY_CLASSES_ROOT if not running in Administrator Mode

查看:854
本文介绍了无法从注册表读取 - HKEY_CLASSES_ROOT,如果不在管理员模式下运行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法从注册表读取,除非我以管理员模式运行我的应用程序。我正在构建一个预览处理程序,使用IPreviewHandler接口,我需要GUID的文件类型位于HKEY_CLASSES_ROOT。

I cannot read from the registry unless I run my application in administrator mode. I am building a preview handler, using the IPreviewHandler interface, and I require GUIDs for file types located in HKEY_CLASSES_ROOT.

如何在不将我的应用程序升级到管理员的情况下访问此信息。我正在使用Delphi,但对任何示例代码都很开心。

How can I access this information without elevating my application to adminstrator. I am using Delphi but happy for any sample code.

谢谢,
Phillip

Thanks, Phillip

推荐答案

当您创建 TRegistry 对象时,默认情况下 ALL_ACCESS 被请求。

When you create a TRegistry object, by default ALL_ACCESS is requested.

如果您只需要读取值,请使用

If you only need to read values, use

reg := TRegistry.Create(KEY_QUERY_VALUE);

这篇关于无法从注册表读取 - HKEY_CLASSES_ROOT,如果不在管理员模式下运行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆