博客
关于我
Inno setup打包vc++运行库
阅读量:638 次
发布时间:2019-03-14

本文共 1377 字,大约阅读时间需要 4 分钟。

在打包Windows应用程序时,很多开发者都会遇到依赖VC++运行库的情况。为了方便用户直接使用Inno Setup进行打包,本文将详细说明如何集成并正确打包VC++运行库。

下载VC++运行库

首先,需要从官方网站下载相应版本的VC++运行库。搜索引擎中可以找到最新版本的下载链接,通常会以.x86.exe或.x64.exe的格式提供。

在Inno Setup中加载运行库

打开Inno Setup脚本文件,进入[Files]标签卡,添加以下内容:

Source: "..\runtime\VC_redist.x86.exe"; DestDir: "{tmp}";`

这将将运行库文件复制到临时目录中。

启动运行库安装

在[Run]标签卡中,添加安装命令:

Filename: "{tmp}\VC_redist.x86.exe"; Parameters: "/i \"{tmp}\VC_redist.x86.exe\" /quiet";`StatusMsg: "安装Microsoft Access Database Engine 2015 Redistributable...";`

这里Check: NeedInstallVC9SP1用于检测是否需要安装VC9 SP1补丁。

检测是否需要安装VC9补丁

使用以下代码判断VC9 SP1是否已安装:

var vc9SP1Missing: Boolean;function NeedInstallVC9SP1(): Boolean;begin  Result := vc9SP1Missing;end;

添加注册表检测代码:

# 检测之前安装function InitializeSetup(): Boolean;var vcVersion: Cardinal;begin  if RegQueryDWordValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{5CD4E357-9ED6-42AC-B654-F1FC21DD60C9}', 'Version', vcVersion) then  begin    # 如果未找到特定版本,判断为缺失    if vcVersion = 0 then      vc9SP1Missing := true;  end;end;

这里{5CD4E357-9ED6-42AC-B654-F1FC21DD60C9}是VC9 SP1的产品ID,需要根据实际需要使用不同的值。

查看运行库版本信息

如果需要知道具体使用的VC运行库版本,可以按照以下步骤操作:

  • 解压VC++运行库文件
  • 使用文件浏览器打开.exe文件
  • 使用Ctrl+F搜索ProductCode
  • 确认Minimum Runtime和Additional Runtime的版本号
  • 注销注册表信息后,搜索ProductCode即可确认安装状态
  • 注意事项

    • 确保Inno Setup脚本位于运行库文件所在目录。
    • 注册表路径和产品ID需根据实际运行库版本调整。
    • 打包完成后,确保检测结果与注册表信息一致。

    通过以上步骤,您可以轻松在Inno Setup中集成并打包VC++运行库,确保应用程序能够正确运行。

    转载地址:http://lcflz.baihongyu.com/

    你可能感兴趣的文章
    Python哪个版本最稳定好用2023.10.19
    查看>>
    Python和黑客技术的渊源
    查看>>
    Python和RF编写接口自动化
    查看>>
    Python和RF编写web自动化
    查看>>
    python和js哪个难_【Python】记一次学习,Python 与 js 在实现闭包时的差异
    查看>>
    python和java哪个更值得学——来自知乎高赞回答
    查看>>
    python和c混合编程 github_在pycharm中使用git版本管理以及同步github的方法
    查看>>
    python命名空间更改_Python模块xml.etree.ElementTree自动修改xml命名空间键
    查看>>
    Python命名中尾随下划线有什么好处?
    查看>>
    Python启动脚本
    查看>>
    Python听写汇总结果
    查看>>
    python吊打Excel?屁!那是你不会用!
    查看>>
    Python合并两张图片 | 先叠透明度再合并 (附Demo)
    查看>>
    python各进制的表述与转换
    查看>>
    python各种库安装
    查看>>
    python可视化matplotlib_如何使用Python中最强大的可视化工具Matplotlib?
    查看>>
    python可维护性_使用这7大神器,让你的Python 代码更容易于维护
    查看>>
    Python只运行一次while循环
    查看>>
    python变量的详细教程_Python零基础入门教程之语法入门[变量](第二期)
    查看>>
    Python变量命名方法-ChatGPT4o作答
    查看>>