当用户失去与后端的连接时,如何强制关闭Access应用程序

问题描述 投票:0回答:2

问题:是否有某种方法可以强制关闭访问,因此它不需要访问后端服务器才能退出?

情况:我有一个Access 2016数据库。后端位于网络共享驱动器上,只有在连接到LAN或VPN时才能访问。在加载时,对服务器进行ping测试,如果发现它将表复制到本地表,如果没有,它只是告诉用户无法连接并继续使用旧数据。用户经常旅行,并不能总是在VPN上,所以他们的想法是他们拥有的数据不会超过几天。顺便说一句,我提到用户只是信息的消费者,而不是贡献者,所以我不在乎他们不能写到后端。这些表包含几个100k记录,应用程序只是将它放在易于搜索和交叉引用的报告中。

问题:虽然这种加载和运行非常好,无论它们是否连接到局域网,如果它们没有连接到服务器,它将不会关闭。它不会产生我可以轻松处理的错误,它只是挂起。任务管理器甚至不会关闭它。

尝试过的解决方案:我尝试取消链接表,只需在后端使用临时连接加载表,但是这意味着用户每次加载时都会被Microsoft Trust Center提示大约8次除非我让他们每个人实际上自己打开后端数据库,给他们密码来做到这一点,但这些都不实用。

vba ms-access access-vba
2个回答
0
投票

访问不适用于远程BE ..如果您想要在远程端使用Access,您有2个选项:

  • 通过RDS连接..用户通过远程桌面连接到服务器..所有东西都是“本地”..现在发生丢失的连接...只要RDP连接保持一切顺利,更重要的是你没有BE断开导致损坏或丢失数据的提示(提示:使用RemoteApp技术,最终用户似乎就像他/她在本地工作一样......我正在使用它并且很棒)
  • 切换BE ...正如我所说,通过远程连接使用Access BE是不明智的..为了做到切换到MsSQL / MySQL / PostGre ...等将为您提供真正的远程连接功能

0
投票

在玩了几天的所有设置后,我终于弄清楚我的问题是什么。为了测试不同的设置以查看我是否可以在一个点上减小文件大小,我在当前数据库设置中打开了“退出时清除缓存”。关闭它可以解决问题。我忘记了那个,所以事实证明它不是一个编程问题。

© www.soinside.com 2019 - 2024. All rights reserved.