如果未在管理员模式下运行,则无法从注册表中读取 - HKEY_CLASSES_ROOT

Phi*_*oux 1 delphi registry visual-studio

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

如何在不将我的应用程序提升为管理员的情况下访问此信息.我正在使用Delphi但很高兴任何示例代码.

谢谢,菲利普

glo*_*lob 8

创建TRegistry对象时,默认情况下ALL_ACCESS是请求的.

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

reg := TRegistry.Create(KEY_QUERY_VALUE);
Run Code Online (Sandbox Code Playgroud)


Nat*_*Nat 6

要添加到globs答案,您还可以使用该TRegistry.OpenKeyReadOnly();方法.