请问CLSID使用方法正确吗//HRESULT hr2 = Math.CreateInstance(_uuidof(CLSID_Math2)); //这样啊?

mirroAtl 2012-10-17 11:31:22
如题!!!!!!
...全文
196 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
是这么用的
问题是在于CLSID_Math2是对象的GUID么
bsnry 2012-10-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

CComPtr<IMathInterface> pMath;
HRESULT hr = pMath.CoCreateInstance (__uuidof (Math2));
[/Quote]


要么知道源码,包含 _i.c, 里面有clsid的定义,

要么用 progid来获取


提供一个例子:



{
IFirstInterfacePtr cc;

CoInitialize(NULL);
CLSID clsid;
CLSIDFromProgID(OLESTR("Example.FirstInterface"),&clsid); //注册表中的progid叫:Example.firstinterface, 新建atl的时候 就已经分配好gudi了,顺便progid就叫这个
cc.CreateInstance(clsid);

CoUninitialize();


return 0;
}


I_ask_who 2012-10-17
  • 打赏
  • 举报
回复
CComPtr<IMathInterface> pMath;
HRESULT hr = pMath.CoCreateInstance (__uuidof (Math2));
I_ask_who 2012-10-17
  • 打赏
  • 举报
回复
_uuidof(Math2)
mirroAtl 2012-10-17
  • 打赏
  • 举报
回复
CLSID_Math2怎么弄成对象的GUID呢?
[Quote=引用 1 楼 的回复:]

是这么用的
问题是在于CLSID_Math2是对象的GUID么
[/Quote]

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧