3

我想了解 VS 2010 中是否有可用的规定或使用某些第三方工具为 Web 应用程序创建补丁程序/热修复程序。我不想发布副本和替换文件/dll 方法,而是使用 Web 设置来安装应用程序,这样只有从原始应用程序更改的文件才会更新并安装在虚拟目录中。

为了更清楚,我想做以下步骤:

步骤1

a) 创建一个有 10 个页面的 Web 应用程序

b) 使用 Web Setup Project 部署 Web 应用程序

第2步

c) 更改 10 页中的 2 页中的功能

d) 为仅有的 2 个更改的文件和受影响的 Dll 创建一个补丁。

步骤 - 3:

e) 运行作为补丁或热修复程序创建的安装文件。

现在,我想实现步骤 -2 部分中提到的c)d)点。

4

1 回答 1

4

假设您在创建初始 Web 设置项目以及您想要从中派生补丁的项目时遵循 MSI 补丁指南...

基本准则(如果你搜索,还有很多其他的要遵循):

  • 确保您的 Web 项目具有有效的版本号 (1.2.3.4)
  • 为您的初始版本构建安装程序
  • 时间流逝....
  • 根据 c) 的要求进行更改
  • 更新 Web 项目版本 - DLL(s) 需要增加版本
  • 更新 Web 设置项目属性 - 版本需要增加。可能是次要的 (XXX.YYY.ZZZ) <- 递增 Y。(默认为 1.0.0)
  • 更新安装项目属性中的包代码
  • 使用更改构建安装程序
  • 对每个设置进行管理安装 (msiexec /a websetup.msi)
  • 使用补丁创建实用程序创建补丁,将“旧”与您刚刚创建的“新”管理安装进行比较。(此步骤取决于您要使用的工具。我过去使用过 Installshield,以及直接 msimsp.exe - old guide here

您可以通过从以前和最新的管理员安装中删除它们来限制受补丁影响的文件(假设它们没有更改)。

确实,修补您的网站应该与 MSI 安装的任何其他文件集没有任何不同。请注意,微软似乎正在通过 msdeploy 进行网站部署,而不是为它们构建安装程序。对于内部部署,它更容易工作。

于 2013-01-10T05:29:59.420 回答