[RESOLVED] MDAC and Vista
VB6 app using PDW Setup. Installs cleanly on XP, which has MDAC 2.8. Install on Vista yields the following two exceptions during Setup:
-- "The procedure entry point lstrcatl could not be located in the dynamic link library MSDART.DLL" (I clicked OK)
-- "Error registering MSADOX.DLL" (I clicked Ignore)
The app starts up okay on Vista and seems to run without problem. I've noticed the following:
-- The Version of MSDART.DLL on XP is 2.81.1117.0; on Vista it's 6.0.6000.16386
-- The Version of MSADOX.DLL is 2.81.1128 on both XP and Vista.
Any ideas? Thanks.
Re: [RESOLVED] MDAC and Vista
What about MDAC for other Windows versions? I included it in an XP install with the PDW without any problems. However, when I run Inno Script and specify 'None" for Minimum Win Version and XP for Minimum NT Version I get the following as missing files: VB_DCOM_MDAC_JET and scripten.exe. If I specify Me for Minimum Win Version and 2000 as Minimum NT Version, I get the same two files plus scr56en.exe.
Re: [RESOLVED] MDAC and Vista
You get those files missing in Inno Script because you selected them to be included and you did not point Inno Script to where they can be found. You ticked Scripting Runtime so that is why you are looking for scr56en.exe. You selected for and Auto OS Updater to be included and may not have downloaded it (or scr56en.exe). It has nothing to do with the OS you select for the target installation.
It is all explained in the instructions for Inno Script...
You must select the AUto OS Updater for your target system and download the proper one then include it in the search path to be found. The same goes for the scripting runtime files...
Re: [RESOLVED] MDAC and Vista
Okay - I'm new to Inno Script so I'll read further. But, one question -- why are these files not called out as missing in the PDW?
Re: [RESOLVED] MDAC and Vista
They are not missing in PDW for PDW is not as good at knowing these things as Inno Script is and besides those files are created for Inno Script to help the install go better. PDW will only be able to install one MDAC file while Inno Script can install multiple MDAC that you may need as well as PROPERLY installing the correct scripting runtime files for your target OS.
You may get lucky with PDW but Inno Script doesn't count on luck for a proper installation...
1 Attachment(s)
Re: [RESOLVED] MDAC and Vista
On my Vista Ultimate system I have VS 6 SP-6 also installed so I cant say 100% but I do have ADO 2.0, 2.1, 2.5, 2.6, 2.7, 2.8, 6.0 and they all point to different tlbs.
Im doing a re-fromat/install this weekend so I can double check it before VS 6 is installed. ;)
Re: VB6 MSDART.dll MSADOX.dll installation error on Windows XP/2003/Vista
Folks,
I finally figured out why my VB6 app that references ADO/ADOX component that works just fine on Win98/Win2000 suddenly got an error at installation/runtime on Windows XP/2003/Vista.
It's because the MDAC release that comes with Windows XP/2003/Vista with latest patches is 2.82 whereas the one on Win2000 is 2.81 (there is no 2.82 for Win98/2000 at this point).
Non working code:
MS ADOX EXT. 2.8 referenced in the project
Dim CatX as ADOX.Catalog
Dim TblX as ADOX.Table
Set CatX = New ADOX.Catalog
Set TblX = New ADOX.Table
...
>> Installing or running my VB6 app as is on any Win2003/XP/Vista will result in an error.
Workaround:
Remove MS ADOX EXT. from the project reference
Dim CatX as Object
Dim TblX as Object
Set CatX = CreateObject("ADOX.Catalog")
With CatX
.AcctiveConnection = MyAdoConnection
...
Set TblX = CreateObject("ADOX.Table")
With TblX
.Name = MyTableName
...
End With
...
End With
Tips:
> I code everything first with MS ADOX EXT. 2.8 referenced in my project and declare all my variables using Dim CatX as ADOX.Catalog...
> This makes my coding faster as all related ADOX methods and properties are displayed as I code.
> Then I go back and remove the MS ADOX EXT. reference from my project and re-code using CreateObject() method.
> Finally, redo the the PDW installation package and run the setup on any system Win98/2000/2003/XP/Vista.
> And voila, my VB6 app using ADOX now works on all platforms...
Hope this helps b/c I saw a lot of posts related to this subject but couldn't find any detail resolution methods anywhere...
Re: [RESOLVED] MDAC and Vista
Thats Late Binding. It allows you to not target a specific version.
Also, the MDACs that come on Vista do contain small updates and improvements