VB6 DAO - importance of registering DAO350.DLL

Hi Experts,

I have a number of VB6 applications that use DAO 3.5.

There are 100s of users happily using the applications on Windows XP, 7 and 8.x

But I have struck a problem when I run my setup programs (created with Setup Factory) on my Windows 10 Pro system.

I'm getting this error when running the setup program:
Error      Register COM file: C:\Program Files (x86)\Common Files\Microsoft Shared\DAO\DAO350.DLL - System Error # 0 (3)
Notice      Register COM failure reason: Error 0x8002801c: Error accessing the OLE registry.

The installed application runs fine - I don't get any errors when using database features.

What I want to know is:  

does it matter to end users if DAO350.DLL is not registered?
can I assume that DAO350.DLL only needs to be registered for developers?
Regards,
Leigh
LVL 1
LeighWardleAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Scott McDaniel (Microsoft Access MVP - EE MVE )Infotrakker SoftwareCommented:
I'd be curious as to exactly what reference is being used on that Win10 box. Can you add code to show the references in use by the application? I know that Access can "upgrade" references to a newer version, so I'm curious if VB6 will do the same.
Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
<<does it matter to end users if DAO350.DLL is not registered?>>

  Yes, DAO will not work.

<<can I assume that DAO350.DLL only needs to be registered for developers?>>

 No.   If VB6 makes a DAO call, it's going to fail if the DLL is not registered.

@Scott,

  No, references don't auto update.  That's an Office only thing.


Usually this error stems from 32/64 bit differences.   Make sure your using regsrv32 in c:\windows\sysWOW64 \ and registering with elevated admin priv.

Jim.
Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
BTW, you really should be using DAO 3.61 rather than 3.5, which is the last release of DAO.

Jim.
Your Guide to Achieving IT Business Success

The IT Service Excellence Tool Kit has best practices to keep your clients happy and business booming. Inside, you’ll find everything you need to increase client satisfaction and retention, become more competitive, and increase your overall success.

Scott McDaniel (Microsoft Access MVP - EE MVE )Infotrakker SoftwareCommented:
The installed application runs fine - I don't get any errors when using database features.

I was curious about the above, if the DLL reg fails. If DAO isn't registered at some level, then the app should not be able to use it. Perhaps DAO35 is already registered on the Win10 box somewhere else?
Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
<<The installed application runs fine - I don't get any errors when using database features.>>

 I missed that.

<<I was curious about the above, if the DLL reg fails. If DAO isn't registered at some level, then the app should not be able to use it. Perhaps DAO35 is already registered on the Win10 box somewhere else?>>

 Sounds like.  The functions in the DLL must be available, or the calls would fail.

 I've always been under the impression though that DAO was a COM style object that needed to be registered in order to work, unlike a standard Windows DLL that just needs to be in the path in order to be called.

I guess I would say if it's all working, then don't worry about it.

Jim.
Scott McDaniel (Microsoft Access MVP - EE MVE )Infotrakker SoftwareCommented:
That was sort of my take - if it's working don't worry with it - but it would be interesting to determine if DAO35 is already installed (and where) or if not, then what's running those DAO calls.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
LeighWardleAuthor Commented:
Hi Jim and Scott.

Thanks for clarifying the situation for me.

Regards,
Leigh
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic Classic

From novice to tech pro — start learning today.