譯文出處:http://www.codeproject.com/Articles/20868/NET-Framework-Installer-for-InnoSetupphp
源文件下載:http://files.cnblogs.com/files/yplong/innodependencyinstaller.zipnode
一個模塊腳原本下載和安裝.NET Framework的全部版本或其餘的軟件。redis
先上圖:sql


說明:
這篇文章介紹了一個innosetup腳原本自動下載(若是本地不存在)和安裝各類依賴項 好比.NET Framework 1.1/2.0/3.5/4.0/4.5和其餘的32位和64位程序。express
背景:
曾幾什麼時候,我須要安裝.Net應用程序。我知道我可以使用智能一鍵安裝包。可是我以爲安裝界面很不友好,並且不是那麼順手。我獲得一個innosetup腳原本完成我所想要作的。可是不幸的是,它只支持.Net1.1.所以,我花費了一點時間來大大的修改它以實現個人目的。windows
詳細資料:

setup.iss--包含了基本的products文件夾下你所須要的文件的安裝。setup.iss須要用這種形式:#include "scripts\products\dotnetfx11.iss 把他們(products文件夾下的iss文件)包含在裏面。而後你只須要調用 【code】 代碼段的主函數,好比dotnetfx11();函數
bin - 用來存放setup.iss編譯生成的exe文件工具
src - 包含了應用安裝包安裝所須要的文件ui
scripts.net
- products.iss -包含了共享的腳本. 你只須要改變
[CustomMessages]
部分和[Files]
部分(包含 isxdl語言文件)
- isxdl - 包含了安裝要下載的dll(若是須要下載) 和語言文件 (e.g. german.ini). 你能夠把你本身須要的語言放在這裏.
- products -包含了安裝所須要的文件(e.g. .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
- dotnetfx45.iss - .NET Framework 4.5.2
- 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
- wic.iss - Windows Imaging Component (windows圖片控件)
- winversion.iss - 幫助肯定安裝的版本信息
- fileversion.iss - 幫助肯定安裝的版本文件
- stringversion.iss - 幫助正確分析版本字符
- dotnetfxversion.iss - 幫助肯定.net安裝和服務包
- msiproduct.iss - 幫助堅持msi軟件
極可能你要調整setup.iss來檢查不一樣的windows版本所須要的依賴項。
若是一個依賴項沒有安裝,安裝過程會檢查相關依賴項的安裝文件是否存在於.\MyProgramDependencies.文件夾下。若是不存在那麼久自動下載。


依賴項的安裝通常自動運行的,靜默安裝。所以不須要用戶插手(不包括IE6)。安裝腳本使用了[CostumMessages]段所以你能夠輕鬆添加多語言支持。
所須要的工具:
- Inno Setup - (版本5.5.5)
- ISTool - Inno Setup的擴展組件。可是我只須要 isxdl.dll downloader (版本5.3.0)
~~~~就到這裏,感謝的話就不翻譯了