I'm facing a problem where I'm trying to use a new .NET app to access
some old VB6 ActiveX exes. The ActiveX exes implement a (base) COM dll
and use an exposed method from that COM dll to do some work. Here is
what I got from the OLE viewer
pcIEBase has a public function Export
interface _clsExportBase : IDispatch {
[id(0x6803001c), propput]
HRESULT Export(
[in] BSTR sTaskInfoXML,
[in] BSTR sParmInfoXML);
};
so coclass pcIENewHire has an interface like this:
coclass clsExportNewHire {
[default] interface _clsExportNewHire;
interface _clsExportBase;
};
How do I access the public Export function via the pcIENewHire from a
..NET app? The Export function is private in the ActiveX exe that I'm
interested in. The public function in the pcIEBase.dll is just a stub,
and In essence I want to execute the Export function located within the
pcIENewHire, but my only exposure is to the public pcIEBase.dll.
On a whim I added references to both the pcIEBase and the pcIENewHire
to my .NET app and via this early binding was able to execute the
proper version of the Export function. However in the real world, I
will not know the prog id at compile time, only at run time. So this is
the rub, early binding works but I haven't figured out the latebinding
call.
Any help would be appreciated
Thanks in advance
Mike Malinowski, Software Engineer