博客
关于我
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 RuntimeAdditional Runtime的版本号
  • 注销注册表信息后,搜索ProductCode即可确认安装状态
  • 注意事项

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

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

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

    你可能感兴趣的文章
    Openlayers中加载Geoserver切割的EPSG:900913离线瓦片图层组
    查看>>
    Openlayers中多图层遮挡时调整图层上下顺序
    查看>>
    Openlayers中将某个feature置于最上层
    查看>>
    Openlayers中点击地图获取坐标并输出
    查看>>
    Openlayers中设置定时绘制和清理直线图层
    查看>>
    Openlayers图文版实战,vue项目从0到1做基础配置
    查看>>
    Openlayers实战:modifystart、modifyend互动示例
    查看>>
    Openlayers实战:判断共享单车是否在电子围栏内
    查看>>
    Openlayers实战:加载Bing地图
    查看>>
    Openlayers实战:绘制图形,导出geojson文件
    查看>>
    Openlayers实战:绘制图形,导出KML文件
    查看>>
    Openlayers实战:绘制多边形,导出CSV文件
    查看>>
    Openlayers实战:绘制带箭头的线
    查看>>
    Openlayers实战:输入WKT数据,输出GML、Polyline、GeoJSON格式数据
    查看>>
    Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
    查看>>
    Openlayers高级交互(11/20):显示带箭头的线段轨迹,箭头居中
    查看>>
    Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)
    查看>>
    Openlayers高级交互(15/20):显示海量多边形,10ms加载完成
    查看>>
    Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
    查看>>
    Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
    查看>>