I thought you might be interested in an update. I have been testing losing
network connectivity. It does appear that shutting down the Access
database
and relaunching does work. So, my users shouldn't need to go to the
extreme
of rebooting unless they're still having issues with the wireless.
However,
I'm still looking to see if it is possible to prevent application shut
down.
Here's what I've come up with so far.
I came across some documentation in a book that we have that talks about
ODBC settings in the Registry. It seems that there is a key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\ODBC\ConnectionTimeout
that is set at a default of 600 seconds (10 minutes). On an activity in
my
database that uses ADO, if I wait the prescribed 10 minutes following loss
of
network connectivity I am able to perform the action. I could bump this
down. However, this doesn't seem to resolve all of my problems.
If I try my dynamic relink routine before the 10 minutes has elapsed I get
the following error (3011 The Microsoft Jet database engine could not fine
the object 'MSysAccounts'. Make sure the object exists and that you spell
its name and the path name correctly.). BTW... This is a secured database
and the *.mdw file does reside in a network folder. After the 10 minutes
has
elapsed, I can successfully run the dynamic relink which drops the tables
and
tries to recreate the links. However, running the relink doesn't bring
the
db back fully and seems to not change anything. If I try to access any of
the linked tables I get the following error (Reserved error (-1104); there
is
no message for this error.). I suppose if my application were fully
unbound,
the registry setting would suffice. However this is not the case. I have
also tried using CurrentProject.CloseConnection, etc. with no luck.
Apparently, this can not be used while the database is open. I'm still
digging.
Julie said:
We are having some ODBC errors on a database that is Access 2000 FE and
SQL
2005 BE. The only PC's that are consistently having an issue are ones
that
connect to the LAN via wireless. The most common error is
[Microsoft][ODBC
SQL Server Driver]Communication link failure (#0) . Short of a reboot of
the
PC or a relaunch of the Access database, is there a way to recover from
this?
I do have a retry count of 10 in place in a few locations, but even
after
the retry we are getting the errors. I am doing a dynamic dns-less
relink at
the launch of the app.