Exe Crash At ADODB.Connection with "Class does not support Automation"

bjan picture bjan · Feb 1, 2012 · Viewed 23.7k times · Source

One machine having MSVBVM60.dll ver 6.0.97.82, say OLD. Other machine having MSVBVM60.dll ver 6.0.98.15, say NEW. Exe created from NEW machine crashes at line new ADODB.Connection on OLD machine giving following error

Run-time error '430': Class does not support Automation or does not support expected interface

How to get rid of this? My prime objective is to run the exe on OLD machine while created on NEW machine. To avoid disturbing config of NEW machine, I tried to unregister older version and register newer version on the OLD machine but no success. Is there any other dll(s) used by ADODB.Connection or i need to do something totally different to get rid of this?

Answer

Deanna picture Deanna · Feb 1, 2012

This is nothing to do with the VB runtime versions and more to do with the ADO libraries (as the error line alludes to) and was caused by Microsoft breaking compatability in their ADO libraries.

KB article 2517589 explains why and the solution which is essentially to recompile against the compatability typelib.