我写了一个COM,其中
m_hInstance=AfxGetApp()->m_hInstance;
这句在VC的应用程序中调用没有问题(基于CDialog的).
但是在VB中却会报 out of memory 代码是 7并且VB的窗口好象和VC创建的窗口不太一样,
我向VB创建的窗口发送
PostMessage(m_hWnd,WM_NCLBUTTONDOWN,HTCAPTION,NULL);
消息时一点反应也没有.
m_hInstance=AfxGetApp()->m_hInstance;
这句在VC的应用程序中调用没有问题(基于CDialog的).
但是在VB中却会报 out of memory 代码是 7并且VB的窗口好象和VC创建的窗口不太一样,
我向VB创建的窗口发送
PostMessage(m_hWnd,WM_NCLBUTTONDOWN,HTCAPTION,NULL);
消息时一点反应也没有.
这个是什么?
你的COM中有这个语句?
m_hInstance=AfxGetApp()->m_hInstance;
在VB下调用时会报out of memory 代码是 7
这些都放在你的VB程序里做。如果不太清楚的话,用google搜索一下窗口子类化,肯定有非常清楚的解释:)
我不是不知道这个,而是说我的组件应该能对VC或VB或其它的windows应用程序
起到相同的作用,而不用在其它的程序里面去添加额外的代码另外请问大家,为什么有下面这句时在VB中调用就会报out of memory?
m_hInstance=AfxGetApp()->m_hInstance;
我觉得这个由问题,你的容器是vb程序的时候,这个获得的dd不对,因为没有CWinApp类存在了(这个是MFC类,VB内没有)
谢谢可是怎样向VB窗体发送它也能够响应的消息呢?
可是用spy++确实可以看到VB的窗本收到的消息
可我发送的是标准的windows消息呀.