原文在这里:http://www.codeproject.com/Articles/20868/NET-Framework-Installer-for-InnoSetup

源文件地址:http://www.codeproject.com/KB/install/dotnetfx_innosetup_instal/innodependencyinstaller.zip

源文件需要注册登录CodeProject才能下载

说明:
通过添加模块化innosetup脚本来自动下载和安装各种依赖项 如.NET Framework 、VC++运行环境等。
源代码是模块化的,结构如下:

  • setup.iss - 包含基本设置,其中包含所需的模块(产品)。 

       你需要把所需的模块在顶部使用#include命令包含在源代码中,例如:

       #include "scripts\products\dotnetfx11.iss"

       然后你只需要在[Code]段调用它们的main函数,如:

       dotnetfx11();

  • bin - 包含安装程序的最终输出
  • src - 包含您的程序的应用程序文件
  • scripts
    • products.iss - 包含产品脚本的共享代码。 您只需要更改[CustomMessages]部分和[Files]部分(包括isxdl语言文件)
    • isxdl - 包含用于设置(如果有要下载的内容)及其语言文件(例如german.ini)的下载器DLL。 这是您可以放置​​isxdldownloader的语言文件的地方。
    • products - 包含应用程序所需的产品的脚本(例如.NET Framework 2.0)
      • dotnetfx11.iss - .NET Framework 1.1
      • dotnetfx11lp.iss - .NET Framework 1.1 Language Pack
      • dotnetfx11sp1.iss - .NET Framework 1.1 + Service Pack 1
      • dotnetfx20.iss - .NET Framework 2.0
      • dotnetfx20lp.iss - .NET Framework 2.0 Language Pack
      • dotnetfx20sp1.iss - .NET Framework 2.0 + Service Pack 1
      • dotnetfx20sp1lp.iss - .NET Framework 2.0 Service Pack 1 Language Pack
      • dotnetfx20sp2.iss - .NET Framework 2.0 + Service Pack 2
      • dotnetfx20sp2lp.iss - .NET Framework 2.0 Service Pack 2 Language Pack
      • dotnetfx35.iss - .NET Framework 3.5
      • dotnetfx35lp.iss - .NET Framework 3.5 Language Pack
      • dotnetfx35sp1.iss - .NET Framework 3.5 + Service Pack 1
      • dotnetfx35sp1lp.iss - .NET Framework 3.5 Service Pack 1 Language Pack
      • dotnetfx40client.iss - .NET Framework 4.0 Client Profile
      • dotnetfx40full.iss - .NET Framework 4.0 Full
      • dotnetfx46.iss - .NET Framework 4.6
      • ie6.iss - Internet Explorer 6
      • iis.iss - Internet Information Services (just a check if it is installed)
      • jet4sp8.iss - Jet 4 + Service Pack 8
      • kb835732.iss - Security Update (KB835732) which is required by .NET Framework 2.0 Service Pack 1 on Windows 2000 Service Pack 4
      • mdac28.iss - Microsoft Data Access Components (MDAC) 2.8
      • msi20.iss - Windows Installer 2.0
      • msi31.iss - Windows Installer 3.1
      • msi45.iss - Windows Installer 4.5
      • sql2005express.iss - SQL Server 2005 Express + Service Pack 3
      • sql2008express.iss - SQL Server 2008 Express R2
      • sqlcompact35sp2.iss - SQL Server Compact 3.5 + Service Pack 2
      • vcredist2005.iss - Visual C++ 2005 Redistributable
      • vcredist2008.iss - Visual C++ 2008 Redistributable
      • vcredist2010.iss - Visual C++ 2010 Redistributable
      • vcredist2012.iss - Visual C++ 2012 Redistributable
      • vcredist2013.iss - Visual C++ 2013 Redistributable
      • vcredist2015.iss - Visual C++ 2015 Redistributable
      • wic.iss - Windows Imaging Component
      • winversion.iss - helper functions to determine the installed Windows version
      • fileversion.iss - helper functions to determine the version of a file
      • stringversion.iss - helper functions to correctly parse a version string
      • dotnetfxversion.iss - helper functions to determine the installed .NET Framework version including service packs
      • msiproduct.iss - helper functions to check for installed msi products

你很可能需要调整setup.iss,以适应不同Windows版本所需的依赖项。

如果依赖项没有安装,安装过程会检查相关依赖项的安装文件是否存在于.\MyProgramDependencies.文件夹下。如果不存在那么程序将会自动下载。

用于脚本的应用程序包括:

  • Inno Setup - (版本5.5.5)
  • ISTool -  Inno Setup的扩展组件。但是我只需要 isxdl.dll downloader (版本5.3.0)

模块化InnoSetup依赖项安装的更多相关文章

  1. 译:用InnoSetup模块化安装依赖项

    译文出处:http://www.codeproject.com/Articles/20868/NET-Framework-Installer-for-InnoSetup 源文件下载:http://fi ...

  2. rpm方式安装gcc缺少依赖项的解决方法

    使用rpm方式安装gcc时,有时会报缺少依赖项: libmpfr.so.1 is needed by cpp-4.4.4-13.el6.i686 libppl.so.7 is needed by cl ...

  3. 安装SQL2008时遇到"未能加载文件或"file:///d:microsoft..sql.chainer.packagedata.dll"或它的某个依赖项

    安装SQL2008时遇到"未能加载文件或"file:///d:microsoft..sql.chainer.packagedata.dll"或它的某个依赖项,如下图所示 ...

  4. Ubuntu安装软件时提示依赖项配置错误

    在终端中使用dpkg安装软件时有时会出现依赖项配置错误的情况, 解决方法是使用指令 sudo apt-get install -f 安装Ubuntu 16.04新系统不再配有的缺失依赖项,之后再次输入 ...

  5. Chrome在Ubuntu中缺少依赖项,无法安装

    在Ubuntu 13.04中,安装chrome会报下面这个错误(不知是不是因为我没有更新的原因:(  ): 也就是缺少名为libxss1的包. 解决办法,当然可以很简单的去找libxss1这个包下载, ...

  6. DPDK安装依赖项合集 环境合集

    前言 在dpdk编译过程中,由于一些依赖项的限制,dpdk在纯净的系统上安装需要花一些功夫.本文总结了编译dpdk所需的依赖项,并归纳了安装合集,在安装过程上可以省下大量的搜索时间. 使用系统 ubu ...

  7. linux安装dpkg安装缺少依赖项的解决

    问题: dpkg: error processing package rxvt:i386 (--install): dependency problems - leaving unconfigured ...

  8. 【记录】Install-Package : “Unity”已拥有为“CommonServiceLocator”定义的依赖项。

    在使用 NuGet 安装 Unity 的时候,安装命令:install-package unity. 但是会莫名奇妙的报如下错误: “Unity”已拥有为“CommonServiceLocator”定 ...

  9. ASP.NET Core 1.0 中的依赖项管理

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

随机推荐

  1. python 程序构架

    http://blog.csdn.net/heyabo/article/details/8806176

  2. Asp.net MVC 视图(四)

    强类型辅助方法 模板辅助方法 Asp.net MVC中的模板辅助方法利用元数据和模板构建HTML,即:模板辅助方法可以通过使用数据注解,在运行时使用合适的任何“编辑器”来生成合适的HTML标记元数据包 ...

  3. 同域名下PC与移动端自动识别跳转

    输入相同域名,在pc端和移动端会出现不同的页面效果,一种是用栅格系统实现自适应,更多的是设计两套不同的模板和两个二级域名或者一个主域名和一个二级域名(就是有区别就可以了); js代码判断浏览器的用户代 ...

  4. HDU 1829 分组并查集

    题意:有两种性别,每组数据表示是男女朋友,判断输入的几组数据是否有同性恋 思路:http://blog.csdn.net/iaccepted/article/details/24304087 分组并查 ...

  5. 与NS2一起度过第一个圣诞夜!(NS2入门学习参考资料)

    Merry xmas! 安装好NS2后正式开始学习NS2啦,先转发一哥们的博客内容,慢慢看! 一). NS常用基本网站         1. 寻求问题答案最好的地方.           http:/ ...

  6. webmin-1.810 安装

    Installing the tar.gz file Before downloading Webmin, you must already have Perl 5 installed on your ...

  7. Gvim+Emmet.vim 那些事。

    转自:http://www.jianshu.com/p/67fa1e2114c5 背景 HTML和CSS的写法相对固定,而且重复的工作特别多,特别是尖括号实在是很烦.使用Emmet至少能帮你节省一半的 ...

  8. python学习笔记 ——python写的猜数字游戏 002

    from sys import exit import random def Arrfor(str): #CONTST = CONTST + 1 artificial = input("请输 ...

  9. s查找父节点

    查找所有的父节点,包括本身,不包括就<>id with tbs as(select * from TB_HomeBase where ID=223 union all select a.* ...

  10. Mysql-简单安装

    centos上安装msqyl 通过如下命令来查看我们的操作系统上是否已经安装了mysql数据库 [root@CentOS6.5 ~]# rpm -qa | grep mysql #这个命令就会查看该操 ...