Fixing references on runtime version

D

Dave Columbus

Doug Steele was a big help to me in fixing a reference problem in my Acc97
application. The runtime version was giving the #error in a Date() field on
the runtime version only. I've installed the runtime version on 3 xp machines
where it works fine, but put it on a xp machine last night and the error
reoccurred. I assume it is a broken reference, but how do I fix it if it only
happens on a machine that has the runtime version of Access? Also, is DAO3.6
backwards compatible to 3.5? Any help is appreciated.
 
A

Allen Browne

DAO 3.6 must *only* be used with JET 4 databases (Access 2000 onwards). You
must use DAO 3.5x for Access 97. If you create a runtime Access 97
application, it must install DAO 3.51, not DAO 3.6.

If you have created the correct runtime with the correct DAO reference, then
it should be possible to re-register the library on the runtime machine
(obviously while Access is not running), with something like this:
regsvr32 "c:\program files\common files\microsoft shared\dao\dao350.dll"

If you have a user who messes up their runtime and can't figure out how to
sort that out, get them to reinstall the runtime. That should re-register
the library also.

In general, you want the absolute minimum number of libraries referenced, to
reduce the chance of a bad reference. If you are not sure which ones you
need, see:
http://members.iinet.net.au/~allenbrowne/ser-38.html

It is difficult to try to sort out references in code, because the code
won't run as soon as VBA realizes it has broken libraries. That means every
function call you need to make must be explicitly called through its library
until your code has verified that all libraries are available. More on that
in michka's article:
How to guarantee that references will work in your applications
at:
http://www.trigeminal.com/usenet/usenet026.asp?1033
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top