我经常遇到类似的情况:我有一堆COM .DLL(没有IDL文件),我需要使用它并调用它们来访问一些外来的(非开放的,未记录的)数据格式.
Microsoft的Visual Studio平台具有非常好的功能,可以导入这些COM DLL并在我的项目中使用它们(Visual C++的#import指令,或使用Visual Basic .NET的对话框挑选和添加它们) - 这是供应商推荐的使用它们的方法.
我有兴趣找到一种在非Microsoft开发平台上使用这些DLL的方法.也就是说,在使用MinGW或Cygwin编译的C++项目中使用这些COM类,或者甚至将Wine的GCC端口编译为linux(将C++作为目标,将Win32编译为在Linux上本机运行的二进制文件).
我使用这个驱动程序取得了一些有限的成功,但是这在100%的情况下都没有成功(我不能使用某些方法返回的COM对象).
有人在类似情况下取得了成功吗?