解决部署 Winform 代码先决条件的方法

Way around deploying prerequisites for Winform code

目前我有一个 60MB 的程序集,需要安装 100MB 的先决条件。例如,用于 Crystal 报告的 Visual C++ 2005、用于 Office 2010 的 Visual studio 工具、Visual C++ 2010 可再分发以及最后的 .NET 框架。

有没有一种方法可以让我不需要部署这些先决条件,从而节省时间和 space?

可能有一种方法可以提取并仅包含这些先决条件中需要的那些部分。

我相信 VC++ 2005 的 CR 合并模块可以包含在您的 MSI 构建中,但 redist 并不大。我还相信您也不需要安装 Visual Studio Office 2010 工具,您需要 Visual Studio Office 2010 Runtime Redistributable 工具,这不是一回事。 VC++ 2010 redist 也不是那么大,但是同样有一些合并模块可以包含在您的 MSI 中。我还怀疑您不需要整个 NET Framework,只需要 Client Profile redist。

除了某些例外,MSFT 通常不支持此功能。使用高级语言、框架、API 等是有代价的。您不会免费获得所有这些……它必须部署。

也就是说,您可以做出选择以使其更易于管理。您可以针对 .NET 3.0+ 并消除 Windows XP,然后突然不需要分发 .NET Framework。

您也可以选择不重新分发它们,而是让您的安装程序简单地出错并告诉用户去安装它。

这是 "it is what it is" 问题之一。