如题。

解决方案 »

  1.   

    In our experiments, the following line, added before OnInitDialog returns, disables the drag-and-drop operations:m_pBrowserApp->put_RegisterAsDropTarget(VARIANT_FALSE);
      

  2.   

    如果你是用MFC做的,在你的dialog类中放置一个成员变量 CMyDropTarget m_droptarget;(定义看后面)
    class CMyDropTarget : public IDropTarget
    {
    public:
      virtual ULONG AddRef() { return 1; }
      virtual ULONG Release() { return 1; }
      virtual HRESULT QueryInterface(REFIID iid, void** ppvObject)
      {
        if (iid==IID_IUnknown || iid==IID_IDropTarget)
        {
          *ppvObject = this;
          return S_OK;
        }
        return E_NOINTERFACE;
      }  STDMETHOD(DragEnter)(IDataObject *, DWORD, POINTL, DWORD * pdwEffect)
      {
        *pdwEffect = DROPEFFECT_NONE;
        return S_OK;
      }
      STDMETHOD(DragOver)(DWORD, POINTL, DWORD * pdwEffect)
      {
        *pdwEffect = DROPEFFECT_NONE;
        return S_OK;
      }
      STDMETHOD(DragLeave)()
      {
        return S_OK;
      }
      STDMETHOD(Drop)(IDataObject *, DWORD, POINTL, DWORD * pdwEffect)
      {
        *pdwEffect = DROPEFFECT_NONE;
        return S_OK;
      }
    };class CMyDialog : public CDHtmlDialog // 这是你的对话框类
    {
      ...
    public:
      CMyDropTarget m_droptarget; // 添加这个成员变量  STDMETHOD(GetDropTarget)(IDropTarget *pDropTarget, IDropTarget **ppDropTarget) // 重载这个虚函数
      {
        *ppDropTarget = (IDropTarget*)&m_droptarget;
        return S_OK;
      }
      

  3.   

    dhtmldialog基类的拖放问题.底层的GetDropTarget封装
    http://topic.csdn.net/u/20071226/17/810dc24b-75ed-462c-a4b1-2bcc54766d32.html