Had the same problem for some days now and just fixed it.
Look "Project\References" menu of VB6, see at the dialog the "Microsoft Data Environment Instance 1.0 (SP4)" is selected. Choose it and you'll see at the bottom the text "Location: C:\Program Files\Common Files\designer\msderun.dll" (or similar location)
go there and for each .dll and .ocx file in that folder and all subfolders open them with "regsvr32.exe" (from windows\system or winnt\system32) to reregister them. Especially try the "msderun.dll" first (then close and reopen your VB project)
also did the same with all ms*.dll and similar .ocx files at winnt\system32
did the same at "c:\Program Files\Common Files\System\ado" for msjro.dll, msadox.dll, msadrh15.dll, msador15.dll,
msadomd15.dll (I must haven done this for the rest of the files there)
I usually assign regsvr32.exe to open the .ocx and .dll files when they're double clicked. Else do (shift+)right_click and open with..., then press "Browse..." and select "regsvr32.exe" from the winnt\system32 (WinNT/2000/XP) or windows\system (Win9x/WinMe) folder