在visual basic中通过网络读取数据库文件,没有共享驱动器

时间:2014-02-04 17:46:14

标签: vb.net networking odbc

我正在尝试访问的机器是一台工业PC,用作某些PLC自动化设备的接口。计算机创建各种机器设置的数据记录(.mdb数据库),以便以后可以根据需要进行检查。我已经在Visual Basic 2010中创建了一个应用程序,用于在将信息从计算机复制到某人的笔记本电脑后对其进行显示和排序。

但是,我想做的是允许用户通过网络从他们的笔记本电脑访问数据库;每台PC在客户的LAN上都有一个静态IP地址。目前,我们可以使用Teamviewer来传输文件,但我想在我的数据查看应用程序中包含该功能。无需更改工业PC上的任何设置(即单独保留网络文件共享,并避免安装任何类型的SQL服务器软件),如何访问此信息?数据库文件可以变得非常大(40+ mb),所以我试图避免任何类型的FTP传输,这无疑需要永远。

数据库已经建立在ODBC连接上(这是个人电脑将PLC信息存储在数据库中的方式),我怀疑这可能是关键,但我对网络缺乏透彻了解和互联网普遍的不信任感ODBC(从我迄今为止看到的很好),我很难找到任何有用的信息。

如果有人能指出我一些有用的教程,或者给我一个好的开始,我会很感激。

1 个答案:

答案 0 :(得分:1)

我觉得你运气不好。想一想,如果你可以访问该文件而不共享它,这不是一个严重的安全问题吗?

您可以做什么:使用始终存在的share \ host \ c $来访问该文件。为此,您需要主机的管理权限。

但请注意:即使这“有效”,也会引入问题:

  1. 它会很慢,因为你基本上是一遍又一遍地在线上复制40MB
  2. 如果您不小心,可以在访问时锁定* .mdb文件。访问数据库实际上并不是由多个用户/进程访问。这并没有阻止微软试图伪造它。 Todo所以,将创建一个* .ldb(L在锁定中)文件,以指示文件被锁定的其他进程。
  3. Tldr:不要这样做。