0
点赞
收藏
分享

微信扫一扫

innosetup如何读取注册表及其字段值


作者:虚坏叔叔

早餐店不会开到晚上,想吃的人早就来了!😄

一、整体的代码

关于注册表的读取需要放到[Code]里面去编写代码实现

[Code]

var
S,installPath : string;
I: Integer;
ErrorCode: Integer;
Guid_names: TArrayOfString;
bool : Boolean;

const AppNameSc='软件四川专版';


// 覆盖安装时,对需要保留的xml处理
procedure AfterMerge(tmpDir: string; relativePath: string);
var
FileName: string;
begin
if RegGetSubkeyNames(HKEY_CURRENT_USER,'SOFTWARE\软件设计\',Guid_names) then
begin
for I:=0 to GetArrayLength(Guid_names)-1 do
begin
S := Guid_names[i];
if (AppNameSc = Guid_names[i])
then
begin
bool := RegQueryStringValue(HKEY_CURRENT_USER,'SOFTWARE\软件设计\'+S,'InstallPath',installPath);
// MsgBox(installPath+relativePath, mbError, MB_OK);

FileCopy(tmpDir, installPath+relativePath, false);
end
end;
end
end;

二、关键代码解释

2.1 RegGetSubkeyNames

RegGetSubkeyNames 读取注册表下的所有文件夹的键名

innosetup如何读取注册表及其字段值_c++

2.2 RegQueryStringValue

RegQueryStringValue 查询字段值

innosetup如何读取注册表及其字段值_开发语言_02

三、总结

  • 本文主要介绍用innosetup打包 打出来的包没有管理员权限无法正常的运行软件功能的问题


举报

相关推荐

0 条评论