Access 2007引擎:如何将其包含在我的.msi安装程序中?

时间:2021-06-02 07:36:06

I have a .NET application which uses an accdb file (MS Access 2007 format) as its database. To install this app on another machine I need to install the Access engine on that machine. Microsoft has this file: AccessDatabaseEngine.exe which includes the engine, but when extracted during installation, runs another .msi installer.

我有一个.NET应用程序,它使用accdb文件(MS Access 2007格式)作为其数据库。要在另一台计算机上安装此应用程序,我需要在该计算机上安装Access引擎。 Microsoft有此文件:包含引擎的AccessDatabaseEngine.exe,但在安装期间解压缩时,运行另一个.msi安装程序。

As you can guess, since this msi is run during the installation of another msi (my app's installer) the Access engine setup fails with error 1500: "Another installation is in progress. Finish that one before continuing this one..."

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

I found the Runtime for Access 2007 as well, and it does install the engine, but the Runtime package is again an msi installer which means I'm still having the same problem.

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

Any ideas to include the engine in my app's installer?

有什么想法在我的应用程序的安装程序中包含引擎?

4 个解决方案

#1


You probably want to have a look at this article: Adding Programs to Access 2007 Deployment Packages

您可能希望看一下本文:向Access 2007部署包添加程序

The Access Developer Extensions offer a basic but functional installer that can take care of the general deployment scenarios.

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

#2


The best think would be to build your own msi pack including needed access files. You could use a product like VERITAS Wininstall. You have this "Discover" method that allows you to build a fully operationial .msi file by (1) taking 2 snapshots of your system (one before the installation, one after) then (2) creating the .msi file corresponding to the installation process.

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

Anyway, I'd advise you to have multiple packs, one for Access, that can be installed with a "for all users" option when the computer joins your company's domain, one for your app. By doing so you will be able to distribute new versions of your app without redistributing Access, which takes a few mega of space as well as a few minutes of user's most precious time).

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

Sio if Microsoft already delivers an Access Runtime msi package, just keep it 'as is' and distribute it automatically on your network when a new machine joins the domain.

Sio如果Microsoft已经提供了Access Runtime msi软件包,只需保持“原样”并在新计算机加入域时自动在网络上分发。

#3


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.

我不推荐WinInstall,我们在我的办公室里有它,我们必须继续打电话给我们包装东西,因为它非常好用。他们根本无法打包的一些东西。 WISE Studio更好,或者是AppDeploy的免费替代品,我听过很棒的事情。

#4


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

我发现这个软件名为“Bootstrapper Manifest Generator”或BMG。它有助于使用MSI或EXE安装程序文件创建必备软件包,并将其添加到安装和部署项目中的VS2008先决条件对话框中。虽然它不是那么用户友好,但它确实起到了作用。它在MSDN上:code.msdn.microsoft.com/bmg

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

认为让别人免于经历所有麻烦是件好事。

#1


You probably want to have a look at this article: Adding Programs to Access 2007 Deployment Packages

您可能希望看一下本文:向Access 2007部署包添加程序

The Access Developer Extensions offer a basic but functional installer that can take care of the general deployment scenarios.

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

#2


The best think would be to build your own msi pack including needed access files. You could use a product like VERITAS Wininstall. You have this "Discover" method that allows you to build a fully operationial .msi file by (1) taking 2 snapshots of your system (one before the installation, one after) then (2) creating the .msi file corresponding to the installation process.

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

Anyway, I'd advise you to have multiple packs, one for Access, that can be installed with a "for all users" option when the computer joins your company's domain, one for your app. By doing so you will be able to distribute new versions of your app without redistributing Access, which takes a few mega of space as well as a few minutes of user's most precious time).

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

Sio if Microsoft already delivers an Access Runtime msi package, just keep it 'as is' and distribute it automatically on your network when a new machine joins the domain.

Sio如果Microsoft已经提供了Access Runtime msi软件包,只需保持“原样”并在新计算机加入域时自动在网络上分发。

#3


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.

我不推荐WinInstall,我们在我的办公室里有它,我们必须继续打电话给我们包装东西,因为它非常好用。他们根本无法打包的一些东西。 WISE Studio更好,或者是AppDeploy的免费替代品,我听过很棒的事情。

#4


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

我发现这个软件名为“Bootstrapper Manifest Generator”或BMG。它有助于使用MSI或EXE安装程序文件创建必备软件包,并将其添加到安装和部署项目中的VS2008先决条件对话框中。虽然它不是那么用户友好,但它确实起到了作用。它在MSDN上:code.msdn.microsoft.com/bmg

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

认为让别人免于经历所有麻烦是件好事。