Статический элемент управления m_hWnd
должен быть действительным при вызове COleDropTarget::Register
, поэтому он не работает из вашего CMyStatic
конструктора. Что вы можете сделать, так это переопределить CWnd::PreSubclassWindow
в вашем CMyStatic
классе:
class CMyStatic : public CStatic {
...
virtual void PreSubclassWindow();
};
void CMyStatic::PreSubclassWindow()
{
CStatic::PreSubclassWindow();
m_MyDropTarget.Register(this);
}
Здесь действительно хорошая статья здесь о CodeProject, которая может оказаться вам полезной.