COM (aka OLE, aka ActiveX) is a good thing. It allows developers to do things and interact
with other apps in ways they never could before. COM has been around for a while
but was introduced to VB developers in version 4.0. There are some minor performance problems
with COM, but in many situations it is
worth it (and often goes unnoticed). See the performance
page for good COM performance tips such as early binding.
With all of this great power comes a lot of great errors. What do you
do when you release an COM-enabled application out into the public and you get
a technical support call that goes something like this:
"I just installed your app and I got an '-2147319765 (8002802b)'.
What do I do?"
Well, you could try calling Microsoft tech support for help at $55
a phone call (after you elevate your case through 5 different techs), or you
could look here for some answers. The difference is here it's free.
First thing you should do, if you are experiencing problems under Windows NT,
is to make sure that you have the latest service pack. Each service pack
fixes COM problems, so make sure you have the latest.
Search Advanced Visual Basic's "WinError"
Search the Microsoft Knowledge Base for "OLE" and "error"
Clean your Registry
Summary List of OLE Bugs
Tips For Troubleshooting Remote OLE Automation Errors
Article List for VB: OLE
And now, on with the show!
Problem: Version Compatibility of OLE Servers
Run-time error '-2147319765 (8002802b)':
Ole Automation error
Element not found.
VB & VB Apps Won't Run If Windows NT OLE Service Stopped
Unexpected error; quitting
Unable to create embedded object
Techniques for Diagnosing & Resolving OLE Automation Errors
429 - OLE Automation server cannot create object
438 - OLE Automation no such property or method
Common Remote OLE Automation Errors
-2147023143 (&H800706d9)
Bizarre OLE Automation Error under Windows NT
OLE Automation Error
The callee (server[not server application]) is not available and
disappeared; all connections are invalid. The call did not execute.
This little guy is an oddity unto himself. It is usually caused when
an OLE client tries to communicate with an OLE server. The unique
situation which causes this error, however, is when the OLE client
is running under Windows NT and is called by an application that
is running as a NT service. If your VB4/32 application is not
running as a NT service you will get this message.
Another possible solution is to delete the OLE server executable,
then re-install (and re-register) the OLE server application.