分享

注册表操作总结

 工厂应用 2018-03-14
1、使用单元Registry
2、读取系统软件安装列表,发现32位和64位若使用
64位系统软件列表在
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\
32位系统软件列表在
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
但是在实际代码编写时
reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall',False);
reg.GetKeyNames(lst1.Items);
获得的软件列表是一致的,
=============================================================================
一般步骤:
reg:=TRegistry.Create;
reg.RootKey:=HKEY_CURRENT_USER;
reg.OpenKey('Software',False);
reg.CloseKey;
reg.free;
=============================================================================
注册表的左侧树形列表称之为“项”,右侧的列表为名称和值
=============================================================================
reg.ReadString('名称')之类的读取的是字符串的值
函数声明为function ReadString(const Name: String):String;,其中参数Name为要读取的字符串的名称函数返回值为要读取的字符串的值是字符串类型。如果该字符串在注册表中不存在,返回值为空字符串
=============================================================================
reg.GetKeyNames(lst1.Items);获取的是项名称的列表
=============================================================================
reg.ValueExists('名称')返回bool,确定字符串名称是否存在
=============================================================================
同一级读取项变换后,必须重新从顶层开始OpenKey
reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall',False);
reg.OpenKey('项名称',False);
reg.CloseKey;
函数声明为function OpenKey(const Key: String; CanCreate: Boolean):Boolean;,其中参数Key指定要打开的注册表的项参数CanCreate指明当要打开的项不存在时是否创建,默认值为False函数返回值为布尔类型,如果打开成功返回True,否则返回False
=============================================================================
=============================================================================
=============================================================================



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多