Thanks Doug,
Some supplementary questions:
1. With late binding, is it true that performance takes a
hit, because each and every time you access something from
the library in question, Access needs to determine whether
that library suports what you're doing, and some sort of
messaging goes on between the Access and the other library?
2. What about references to different versions of MS
Excel? Is late binding the way to go here as well?
3. I thought that late binding didn't actually solve the
problem, it just allows the code to compile and run. Is
this true?
4. Your comment about msado15.dll was interesting. Is it
likely that my MS Office 2003 at home is just not
installed properly? It certainly doesn't seem to be
finding msado15.dll.
Thanks for Tony's link. I'll take a look.
GPO
>-----Original Message-----
>There's no way of automating the fall-back to whatever
version is present.
>However, I thought virtually every version of ADO
referenced msado15.dll.
>
>While it may be possible to write code to check your
references at startup
>and fix them based on what's on the machine, the normal
approach is to use
>Late Binding, which doesn't require that a reference be
made in advance.
>
>Tony Toews has some information about this at
>http://www.granite.ab.ca/access/latebinding.htm
>
>--
>Doug Steele, Microsoft Access MVP
>http://I.Am/DougSteele
>(no e-mails, please!)
>
>
>"GPO" <cre@inin> wrote in message
>news:e53b01c43c5c$63a85310$(E-Mail Removed)...
>> About 18 months ago I developed a little tool in DAO and
>> Access 2000 (.mdb) that was deployed to about forty
>> different organisations, all on different systems.
Nearly
>> always the users have been able to run it without the
>> problems you might associate with different OSs,
different
>> updates and patches installed, and so on. All were using
>> Office 2000 professional, but were left to their own
>> devices as far as maintenance goes.
>>
>> This year I was given the directive from on high to
>> rewrite the code in ADO. So I did. I have noticed in
>> testing that using ADO at work (we use 2.8 in here -
>> msado15.dll) is fine, but when I test it on my home
>> machine (ADO 2.7 - msado27.tlb), and the references
don't
>> use the 2.7 library, they just denote 2.8 as missing.
And
>> it dies.
>>
>> Is there a way of telling the references "If you can't
>> find 2.8, then use the next most recent ADO library?"
>>
>> To ensure compatibility, should I test in ADO 2.0 and
>> assume that if it runs in that environment, then it
should
>> run in any subsequent version of ADO?
>>
>> I also use a reference to Excel 9 (Excel9.olb), but what
>> happens if the people are using office XP or 2003 now?
If
>> I assume the minimum requirements are Office 2000, then
>> can I include a piece of code that says "Look for Excel
>> 2003, if you can't find it, go to Excel XP, if you can't
>> find that, go to Excel 2000"?
>>
>> Thanks in advance.
>>
>> Regards
>>
>> GPO
>
>
>.
>