最近写一个东东,搞成DLL的给客户用,但是其中涉及到很多界面也放在dll中,这样就涉及到了一些需要有消息处理能力的框架才能够处理的东西,感觉很麻烦,不知道大家在这方面有什么经验?讨论下啊。

解决方案 »

  1.   

    推荐使用MFC扩展DLL,在使用DLL中的资源时记得调用
    AFX_MANAGE_STATE(AfxGetStaticModuleState());可以在主线程中调用,也可以在DLL中的UI线程(有消息队列的线程)中使用。
      

  2.   

    应该将主程序的窗口句柄传到DLL中。
      

  3.   

    syy64(太平洋) ,是考虑将主窗体的句柄传进取的,但是总希望DLL能够独立性强一些,DLL自己不能有消息循环么?
     DentistryDoctor(My heart will fly,in the sky.) ,如何在DLL中创建有消息循环得UI线程?
      

  4.   

    dll也可以有自己的消息循环在DLL中创建UI线程也很简单,用MFC扩展DLL创建,但是有些资源模块需要设到dll中
      

  5.   

    回复人: syy64(太平洋) ( ) 信誉:145  2006-01-22 13:42:00  得分: 0  
     
     
       应该将主程序的窗口句柄传到DLL中。
      
     
      

  6.   

    DLL中没有自己独立的主窗体。
      

  7.   

    我一般都是用GetParent()->SendMessage,这样不需要传递什么东西,而且既然DLL里面是子窗口,那么他一定会有父窗口。如果你还要分发的话,再在父窗口把这个消息传递出去就可以了
      

  8.   

    有没有例子,yinzhaohui(努力) ( )
      

  9.   

    dll也有消息循环啊,和sdk的exe一样的