Re: Is msado15.dll different across Windows operating systems?




"Chuck Heatherly" <chuck.heatherly@xxxxxxxxxxxxxxxx> wrote in message
news:5a63g29sf4dcjkfvlk5unbtg7oajece3de@xxxxxxxxxx
I have several .NET projects that reference the ADODB library on the
fly, meaning they do not use the primary interop library, they
generate the interop version at build time. This is due to the fact
that the projects need to use the most current version of ADODB, and
Microsoft only updates the primary interop library when new versions
of Visual Studio are released. This statement was made by Kevin Yu of
Microsoft in this group in a posting dated 4/7/2005.

I need to run these projects on Windows XP, Windows Server 2003,
Windows XP x64, Windows Server 2003 x64, etc. My question is, can I
just build these projects on a Windows XP box, using the AnyCPU and
x64 platform settings respectively, and then copy the binaries and the
Interop.ADODB file to the desired machine and run there? Or, do I
need to build on the OS in question, so that the platform-specific
copy of msado15.dll is used to generate a platform-specific version of
Interop.ADODB? I.e., is msado15.dll different between all these
operating systems, including Vista? Assuming we are talking about the
same version of ADODB, of course.

Thanks,
Chuck

First of all I would question the requirement "that the projects need to use
the most current version of ADODB" this seems like a recipe for failure.
Projects should be targeted to a specific version of the ADO Data Access
Library, and any further upgrades/modification handled as a major change or
upgrade to the apps.

Second, while msado15.dll is updated and associated with a specific MDAC
release (which are often times referred to as the highest/newest ADO version
they support), the component supports all previous ADO versions. ie,
provides backward-compatibility or previous interfaces (also bug fixes,
enhancements, etc for previous versions). So if your apps/projects are
targeting ADO 2.8, then you will get ADO 2.8 Interfaces - no matter what
MDAC or platform version the component came from. You will get an ADO 2.8
Interface, even if MS decides to release 3.1 tomorrow.

Anyway that's the plan. Unfortunately that doesn't mean that this works all
the time. There are exceptions. But they are rare, considered 'bugs', and
are handled by MS Support. <g>

As Interopt is a layer for COM support, which depends on exposed
Interfaces - and NOT specific components. (The very raison d'etre for COM) I
would think a single Interopt should suffice. However, who knows what the
future holds for yet un-released OSs?

-ralph




.



Relevant Pages

  • Re: Message to Bill Vaughn
    ... sensitive as COM-based ADO. ... the customer decided to put the application on a Windows ... > 2000 platform in addition to the NT platform. ... > the Oracle database to 9i. ...
    (microsoft.public.data.ado)
  • Message to Bill Vaughn
    ... The Oracle database is maintained by a third ... the customer decided to put the application on a Windows ... 2000 platform in addition to the NT platform. ... the developer changed the controls from RDO to ADO. ...
    (microsoft.public.data.ado)
  • Re: whats the cost of casting an object to an interface
    ... but again depends on the platform. ... If its compact framework don't ... in an windows or web based application it should will not matter ... > in relation to number of interfaces that object implements. ...
    (microsoft.public.dotnet.framework.performance)
  • Re: VB program conversion from Windows 95 to Windows XP
    ... In Windows 95 or ... Component Checker below to test if ADO was installed probably, ... Also, in the references, make sure that you select only one "Microsoft ... > utilizing Microsoft ActiveX Data Objects 2.8 Library my error changed to: ...
    (microsoft.public.vb.general.discussion)
  • Re: VB program conversion from Windows 95 to Windows XP
    ... In Windows 95 ... > It's most likely that the XP machine is messed up as far as ADO is ... > Also, in the references, make sure that you select only one "Microsoft ... > ActiveX Data Objects X.X Library", where X.X is the latest version shown ...
    (microsoft.public.vb.general.discussion)

Loading