如何自动更新MS-Access 2007应用程序

时间:2011-06-06 14:15:49

标签: ms-access

我有一个与MySql服务器通信的前端Access 2007应用程序。

我想要一个功能,用户计算机上的应用程序可以检测到网络上有新版本(这并不困难),并将最新版本下载到本地驱动器并启动它。

是否有人知道如何做到这一点?

由于

3 个答案:

答案 0 :(得分:5)

您确实需要以确定是否有更新的版本?

我们也有类似的设置,我们只需复制前端和所有相关文件每次有人启动应用程序。

我们的用户无法启动Access或前端本身。他们实际上启动了一个类似于这样的批处理文件:

@echo off
xcopy x:\soft\frontend.mde c:\app\ /Y
c:\app\frontend.mde

当我们开始编写应用程序时,我们也考虑了自动更新,并决定每次复制所有内容就足够了。

我们有足够的带宽,因此复制不会产生任何性能问题(约有200个用户)。

另外,作为开发人员,当我确信每次启动应用程序时,无论如何都会覆盖前端,这对我来说更容易。 我不必关心前端关闭时自动压缩前端(并且用户抱怨关闭应用程序需要太长时间......),而且我不必在崩溃后处理损坏的前端。


@Lumis - 关于自定义图标:
好吧,也许我应该更明确地说明这一点。只有一个批处理文件,它与前端位于同一个网络文件夹中。
用户只需在桌面上有链接,这些链接都指向网络文件夹中的同一个批处理文件 这意味着:

  1. 对批处理文件的未来更改很容易,因为它只有一个 文件在一个中心位置
  2. 我们可以更改图标,因为 用户看到的是正常的Windows链接
  3. (顺便说一句,我们做了更改图标。我们的应用仅供内部使用,我在一家制造公司工作,这意味着除了极少数用户绝对不是技术性的,对图标也不在乎,只要它在所有机器上都是一样的,并且他们知道它的样子,以便他们可以在桌面上快速找到它......) < / p>

答案 1 :(得分:2)

Tony Toews有一个:Access Auto FE Updater

它似乎是免费的,但我不是百分百肯定。

答案 2 :(得分:0)

Lumis的选项很可靠,但是如果您想检查版本并且仅在数据库是新版本时复制数据库,请使用&#39;版本&#39;后端表中的字段和版本&#39;在前端模块中保持不变。使这些与每个新的生产版本保持同步。当前端数据库的主窗体打开时,将表版本与模块中的版本进行比较。

如果它们不匹配,请关闭数据库,但让数据库调用批处理文件作为要关闭时运行的最后一段代码。数据库应在批处理文件开始复制过程之前完成关闭。如果需要,请在批处理文件代码中稍加延迟,以确保没有文件锁定问题。