InstallShield "Full" Redistributable 强制访问互联网

InstallShield "Full" Redistributable forces internet access

我使用 Flexera 的 InstallShield Express 将我的软件捆绑到一个 Setup.exe 文件中。我包含了 .NET Framework 4.7.1 可再发行版(2. Specify Application Data > 'Microsoft .NET Framework 4.7.1 Full' 在中间面板中被选中并突出显示,并且说 'installed locally' > 'Install before feature selection' 在底部面板中被选中)。

我在无法访问互联网的情况下使用全新安装的 Windows 7 计算机并尝试安装。它给了我错误:

"An error occurred while downloading the file http://saturn.installshield.com/is/prerequisites/Microsoft.NET Framework 4.7.1 Full.prq"

然后我连上了网络,就可以上网了。我查找了 prq 的文本。可能有一种方法可以通过 InstallShield 找到它,但我从 community.flexerasoftware.com 找到了一个论坛 post,询问 4.7.2。

感兴趣的两部分是:

<file LocalFile="&lt;ISProductFolder&gt;
\SetupPrerequisites\Microsoft .net.7.1\Full\NDP472-KB4054530-x86-x64-AllOS-ENU.exe" 
URL="https://download.microsoft.com/download
/6/E/4/6E48E8AB-DC00-419E-9704-06DD46E5F81D/NDP472-KB4054530-x86-x64-AllOS-ENU.exe"
FileSize="0,0"/>

<properties Id="{BFF4A593-74C5-482F-9771-7495035EBBB0}" 
Description="This prerequisite installs the .NET Framework 4.7.2 Full standalone package." 
AltPrqURL="http://saturn.installshield.com/is/prerequisites
/Microsoft .NET Framework 4.7.2 Full.prq"/>

文件读取“4.7.1”的事实是我需要探索的另一个蠕虫病毒(不在本问题的范围内)。我假设所有 prq 文件都有一个共同的结构。我相信此信息告诉我 URL (download.microsoft.com) 在我的安装过程中被跳过并使用了 AltPrqUril (saturn.installshield.com)。但即使 URL 没有被跳过,它仍然会查看万维网上的页面。

问题

为什么我需要互联网连接? 'Full' 版本与 'Web' 版本的具体区别在于您无需连接到互联网即可安装它。

避免 Internet 连接要求

To embed runtimes in the setup.exe and hence avoid the need for an Internet connection, you can try to set the option "Extract prerequisites from setup.exe" in the setup.exe tab in the Release view as illustrated in the second screenshot below.

Then you select the "Full" .NET Framework version in the Prerequisites View. Not 100% sure what features the Installshield Express version has vs the full versions. The below is from the Premier version.

You can check your finished bundle, by doing a "setup.exe /a" - from a command prompt - on the final setup.exe and extract the files to see what is really included in the bundle.


快速提醒

如果您有支持协议,我认为您通常应该致电 Installshield 支持,或者查看他们自己的社区:https://community.flexerasoftware.com

之所以提及这一点,是因为人们有时会忘记检查他们是否有支持协议和支持,并且 community 可能会在 5 分钟内解决您的问题 - 如果您在这里没有得到答案。

发布向导

然而,从臀部开始我会建议原因可能是 Installshield 2018 常规版本的 Release Wizard 中可用的此设置。可能是Express 版中的类似内容:

Release 属性 页面中,这个设置似乎在 Setup.exe 选项卡下并且它称为“Installshield 先决条件位置”:

[

首选下载

就其价值而言,我真的不喜欢臃肿的设置中包含的旧的、过时的运行时。这与我作为企业部署专家的经历有关,一天中的大部分时间都是从供应商包中提取过时的运行时。

我总是建议您从网上下载非常常见的运行时,或者允许它们通过 Windows 更新安装。这基本上包括所有 Microsoft 运行时。

我只喜欢捆绑运行时 1) 稀有且特殊,2) 稳定且经得起考验,3) 小巧玲珑。即便如此,我还是希望它们单独下载和安装——允许在不重建整个设置的情况下安装安全修复程序——你只需在服务器上安装新的运行时版本(营销将需要一个新版本用于物理发布——这是刚刚添加的如果你问我风险)。

War 故事:SOAP 合并模块 - 过去 - 几乎毁掉了我的全局部署范围包.部署错误翻了两番。先决条件确实会毁了你的工作,你将面临对所见问题的不理解。尽量弄清楚是什么中断了以及为什么中断。并尽可能摆脱所有先决条件(我知道,天上掉馅饼的想法)。当然,某些运行时是不可避免的。我只是闲聊 :-).