G
Guest
Hi,
I used ATL to create a COM library that does a lot of work via IStreams
that are passed in. I had hoped to test this library using managed C++. I
added my COM library as a reference and vc brought it in and created an
interop dll for me. The problem is that it also wrapped the IStream
interface as a managed interface. I need to use API's such as
SHCreateStreamOnFile in order to get the IStream. This API will not accept
the managed version of the IStream. And I cannot pass the unmanaged version
of the interface into the interop dll. I cannot seem to find any way to get
the unmanaged interface and get an instance of the managed interface from it.
Surely there must be a way to do this, no?
I used ATL to create a COM library that does a lot of work via IStreams
that are passed in. I had hoped to test this library using managed C++. I
added my COM library as a reference and vc brought it in and created an
interop dll for me. The problem is that it also wrapped the IStream
interface as a managed interface. I need to use API's such as
SHCreateStreamOnFile in order to get the IStream. This API will not accept
the managed version of the IStream. And I cannot pass the unmanaged version
of the interface into the interop dll. I cannot seem to find any way to get
the unmanaged interface and get an instance of the managed interface from it.
Surely there must be a way to do this, no?