我有个捆饶我好几天的问题:我用函数调用了一个DLL,进入DLL后的界面里添加按钮,点击按钮调用了一个对话框,而当我在这个对话框上用了ADO和DATAGIRD控件后这个对话框就不能显示了,怎么解决? 
我在EXE操作的时候是可以的,能调用,为什么用DLL就不成功了?
救救我吧!!!!!!!!!

解决方案 »

  1.   

    在你的DLL初始化用上 CoInitialize
      

  2.   

    可能少什么初始化代码,就像MFC中加入RichEditCtrl控件,不加初始AfxInitRichEdit(),对话框弹不出来。
      

  3.   

    是不是在APP的初始化函数那里加CoInitialize(NULL)吧 还是不成功啊
      

  4.   

    csdn真的搞不定我的问题么??????????????????????????????????????????????????????????????????????????????????????????????
      

  5.   

    (handyforever425) 等 级: 
    结帖率:0.00% 
      

  6.   

    这位老兄这是干什么 我刚申请的来问CSDN 不用这样吧 第一个问题就搞不定
      

  7.   

    就是做个DLL 然后调用它   我用EXE做的时候是可以调用有ADO控件的对话框的 但是用DLL就不行了 已经痛苦了很多天了啊 这资料太少了
      

  8.   

    初始化Com环境,AfxOleInit();
    或者在Dll函数中第一行写上:AFX_MANAGE_STATE(AfxGetStaticModuleState( ));试试
      

  9.   

    你加了
    #import   "c:\program   files\common   files\system\ado\msado15.dll"    no_namespace    rename   ("EOF",   "adoEOF"),   rename("BOF","adoBOF")  
    如果没加加上看看
      

  10.   

    不好意思弄错了,应该是 
    #import   "C:\Program   Files\Common   Files\System\ADO\msado15.dll"     
    rename("EOF","adoEOF"),   rename("BOF","adoBOF")          
    在用到ADO类的头文件中添加此语句       using   namespace   ADODB;
      

  11.   

    这个不加的话我EXE也不能显示不了  这个已经加了  问题是我用DLL的时候就不能显示啊 如果需要的话 留个邮箱 我把示例发给各位好心人 你们看下