我想通过智能指针调用DirectX的接口IDirectDraw4,代码如下:
CComPtr<IDirectDraw4> pdd;
pdd.CoCreateInstance(CLSID_DirectDraw);但是出现问题,编译时错误:
error C2787: “IDirectDraw4” : 没有与该对象关联的 GUID 不知什么原因,应该怎么处理?
多谢!!!

解决方案 »

  1.   

    template<class T>CComPtr的CoCreateInstance隐式的调用了__uudof(T),该错误提醒你没有guid与IDirectdra4绑定到一起,至于这个错误怎么产生的,我就不知道了。
      

  2.   


    你应该在IDirectDraw4声明的那个地方看到类似于:
    struct __declspec(uuid("6e4dfaf5-8ce2-4dc6-b416-754d610c9230"))
    IDirectDraw4 : IDispatch
    的行的。
      

  3.   

    没有见到这个东东,在sdk是找也找不到,那怎么办,是不是只能使用com的sdk了?