我想在dll导出函数中调用属性对话框,代码如下
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CFieldsSheet dlg("字段条件设置",NULL,0);
dlg.DoModal();
其中CFieldsSheet是属性对话框从CPropertySheet派生,执行后对话框没有建立起来,怎么回事?我本来用的是普通的对话框
AFX_MANAGE_STATE(AfxGetStaticModuleState());
CSetFieldDlg dlg;
dlg.DoModal();
是可以建立的,请大家帮帮忙

解决方案 »

  1.   

    对话框资源在DLL中还是在EXE文件中?
      

  2.   

    AFX_MANAGE_STATE(AfxGetStaticModuleState());
    AfxSetResourceHandle(LoadLibrary("mysheet.dll"));<<---------切换资源
    CFieldsSheet dlg("字段条件设置",NULL,0);
    AfxSetResourceHandle(AfxGetInstance());<<---------切换资源
    dlg.DoModal();
      

  3.   

    http://community.csdn.net/Expert/topic/3296/3296255.xml?temp=.3603784
      

  4.   

    我资源都是在dll中,为什么普通对话框就可以,属性对话框不可以啊
      

  5.   

    我这样做了,还是不行啊,调试时候,好像属性页根本没有建立
    AFX_MANAGE_STATE(AfxGetStaticModuleState());
    AfxSetResourceHandle(LoadLibrary("mysheet.dll"));<<---------切换资源
    CFieldsSheet dlg("字段条件设置",NULL,0);
    AfxSetResourceHandle(AfxGetInstance());<<---------切换资源
    dlg.DoModal();
      

  6.   

    属性对话框同样的代码在exe程序中可以用,没有出错