0

我们目前使用 VS 2010(从 2008 升级)安装项目来安装我们的应用程序,并利用 SQL Server 2008 安装先决条件。

那么您不知道吗,管理层已经意识到应用程序安装的所有内容(包括先决条件,但不包括 .net)现在必须由卸载程序卸载。

所以我正在尝试修改安装程序以卸载 SQL Server Express 2008。

我首先认为我可以修改 sql server 的 package.xml 依赖项以触发正确的安装条件,这样我就可以传入卸载参数,但我不知道这些条件是什么。

然后我考虑使用自定义安装操作并System.Diagnostics.Process使用卸载命令标志以编程方式调用 sql express 安装程序,但我不确定我是否可以保证安装程序将使该可执行文件可用于卸载。

有任何想法吗?

4

1 回答 1

0

嗯,卸载sql server express是不好的。如果后来添加了另一个依赖于此的应用程序怎么办?您的卸载程序会破坏该应用程序。

不过,管理是正确的:您应该首先卸载您安装的所有内容。

那么解决方案是什么呢?正如他们所说,“如果你这样做该死,如果你不这样做该死”。

幸运的是,如果这是针对桌面应用程序,答案很简单: 不要使用 Sql Server Express Edition。Express Edition 是一个真正的服务器类引擎。Sql Server Compact Edition 更适合这种情况,并将解决您的部署问题。

如果这是用于服务器应用程序,那就有点棘手了。任何表现良好的安装程序都会创建它自己的 Sql Server Express 实例。然后,您需要确保仅卸载您的实例(并确保您的安装运行良好)。这并不能真正解决问题,但至少它可以让您说这是他们的错误,而不是您在卸载程序运行后是否出现问题。不幸的是,您仍然必须手动构建这部分。

于 2010-07-06T18:49:31.667 回答