業務で、リモート端末(\\server)にあるmdbを操作しています。クライアントは、access VBA または、VB6です。
業務上はLAN内の接続ですが、出先からVPN経由で接続することがあります。
このときaccess VBAでは、LAN,VPN関係なく接続することができますが
vb6アプリになると、VPN接続環境の時に「ファイル \\server\share\master.mdbを開くことができませんでした。
ほかのユーザーが排他的に開いているか、権限がありません」となってしまいます。
Dim adoRec As New ADODB.Recordset
Dim adoCon As New ADODB.Connection
adoCon.ConnectionString = "Provider=Microsoft.jet.OLEDB.4.0;" & _
"Data Source=\\server\share\master.mdb;"
adoCon.Open ←ここでエラー(a)
adoCon.execute "SQL"
同様に、クライアント端末内にあるmaster.mdb内テーブルをリンクしたlocal.mdbに対して同じ事をやると、local.mdbに接続できますが(上記のタイミングではエラーにならない)、
リンクテーブルを開く時点で同じエラーになります
local.mdb内のvbaは--
Dim adoRec As New ADODB.Recordset
Dim adoCon As New ADODB.Connection
Set adoCN = CurrentProject.Connection
adocn.execute "SQL"
vpnでもlanでも有効に作動します。
vpn下で、\\server\share\master.mdbを開くことはできます。
また、気になるのは、Data Source=\\server\share\master.mdb の所で
\\serverを適当な文字列にすると、正しいパスエラーを表示しますが、
ディレクトリ、ファイル名を存在しない文字列にしても(a)エラーを表示します。エラー表示がおかしい?
何かヒントでもよいのでお願いします。