What does stdole.dll do?

Posted by rc1 on Stack Overflow See other posts from Stack Overflow or by rc1
Published on 2008-10-02T12:34:03Z Indexed on 2010/04/03 8:53 UTC
Read the original article Hit count: 401

Filed under:
|
|

We have a large C# (.net 2.0) app which uses our own C++ COM component and a 3rd party fingerprint scanner library also accessed via COM. We ran into an issue where in production some events from the fingerprint library do not get fired into the C# app, although events from our own C++ COM component fired and were received just fine.

Using MSINFO32 to compare the loaded modules on a working system to those on a failing system we determined that this was caused by STDOLE.DLL not being in the GAC and hence not loaded into the faulty process.

Dragging this file into the GAC caused events to come back fine from the fingerprint COM library.

So what does stdole.dll do? It's 16k in size so it can't be much... is it some sort of link to another library like STDOLE32? How come its absence causes such odd behavior?

How do we distribute stdole.dll? This is an XCOPY deploy app and we don't use the GAC. Should we package it as a resource and use the System.EnterpriseServices.Internal.Publish.GacInstall to ensure it's in the GAC?

© Stack Overflow or respective owner

Related posts about c#

Related posts about com