2

我有一个 .NET 应用程序,它使用 accdb 文件(MS Access 2007 格式)作为其数据库。要在另一台机器上安装这个应用程序,我需要在该机器上安装 Access 引擎。Microsoft 有这个文件:AccessDatabaseEngine.exe,其中包含引擎,但在安装过程中提取时,会运行另一个 .msi 安装程序。

您可以猜到,由于此 msi 在安装另一个 msi(我的应用程序的安装程序)期间运行,因此 Access 引擎设置失败并出现错误 1500:“另一个安装正在进行中。在继续这个之前完成那个...”

我也找到了 Access 2007 的运行时,它确实安装了引擎,但运行时包又是一个 msi 安装程序,这意味着我仍然遇到同样的问题。

将引擎包含在我的应用程序安装程序中的任何想法?

4

4 回答 4

2

您可能想看看这篇文章:添加程序到 Access 2007 部署包

Access Developer Extensions提供了一个基本但功能强大的安装程序,可以处理一般部署方案。

于 2008-12-18T16:21:04.183 回答
1

最好的想法是构建自己的 msi 包,包括所需的访问文件。您可以使用 VERITAS Wininstall 之类的产品。您有这种“发现”方法,允许您通过 (1) 拍摄系统的 2 个快照(安装前一个,安装后一个)然后 (2) 创建与安装相对应的 .msi 文件,从而构建一个完全可操作的 .msi 文件过程。

无论如何,我建议您拥有多个包,一个用于 Access,当计算机加入您公司的域时,可以使用“所有用户”选项安装它,一个用于您的应用程序。通过这样做,您将能够分发您的应用程序的新版本,而无需重新分发 Access,这会占用几兆空间以及几分钟用户最宝贵的时间)。

Sio 如果 Microsoft 已经提供了 Access Runtime msi 包,只需保持“原样”并在新机器加入域时自动将其分发到您的网络上。

于 2008-12-19T11:45:00.133 回答
0

I wouldn't recommend WinInstall, we have it in my office and we have to keep calling them in to package stuff for us as it's so finiky to use. Some things they haven't been able to package at all. WISE Studio is better or a free alternative is AppDeploy whihc I have heard great things about.

于 2009-04-09T12:32:06.973 回答
0

I found this software called "Bootstrapper Manifest Generator" or BMG. It helps create a prerequisite package using an MSI or EXE installer file, and adds it to VS2008 Prerequisites dialog box in Setup and Deployment projects. Although it's not that user friendly, it does the job. It's on MSDN: code.msdn.microsoft.com/bmg

Thought it's good to save others from going through all the trouble.

于 2010-10-27T11:12:29.843 回答