有一个第三方进程内com,用OLE/COM Object viwer能看到该组建的CLSID,和接口IID。现在有个问题就是在vc里面怎么才能调用这个com呢。。.h和idl文件都没有tlb文件也没有。。
我的理解是vc要显示的指明IMatch接口(该dll到处的接口是IMatch)。。现在问题是怎么定义该IMatch呢??例如:
::CoInitialize(NULL);
IMatch* pWatch=NULL;
HRESULT hr = CoCreateInstance (CLSID_Watch,NULL,CLSCTX_INPROC,IID_IMatch,(void**)&pWatch);
if(SUCCEEDED(hr))
{
//do something
}
::CoUninitialize();
现在的问题是IMatch是未声明的标识符,clsid和iid我都定义过了。
我的理解是vc要显示的指明IMatch接口(该dll到处的接口是IMatch)。。现在问题是怎么定义该IMatch呢??例如:
::CoInitialize(NULL);
IMatch* pWatch=NULL;
HRESULT hr = CoCreateInstance (CLSID_Watch,NULL,CLSCTX_INPROC,IID_IMatch,(void**)&pWatch);
if(SUCCEEDED(hr))
{
//do something
}
::CoUninitialize();
现在的问题是IMatch是未声明的标识符,clsid和iid我都定义过了。
解决方案 »
- 怎样想把一个指针赋值给一个句柄呢
- 我们需要什么样的老师?我们需要什么样的课程体系?我们学生又该怎么学?
- ADO怎么用呀?(刚学的)
- 大家帮忙~~~~~~~~~~谢谢
- 如何在找到TrayClockWClass的句柄?
- Access数据库出错修复后,有记录看上去是#########,怎样编程删除之?
- 请教一个关于编辑控件的问题!
- MFC中treectrl控件如何通过节点名在树中定位到该节点?
- 在javascript中怎样调用com接口?望各位指教
- 请教各位高手,怎样用VTOOLSD做一个VXD来HOOK WIN32 API?
- CListCtrl 不能插入数据?
- EVC应用程序怎样实现支持多国语言???
或者直接用#import 导入dll
用#import "a.dll"
a.dll 里面的接口怎么描述?
例如使用msxml就这样
#import <msxml.dll> named_guids
然后在工程里面直接使用就可以了,至于定义都在#import生成的文件中。
会生成TLI TLH
IMatchPtr 会在里面定义的
用midl编辑idl文件可以导出c的接口。
----------------------------------
vckbase 20期电子杂志.