把Duilib窗体作为子窗体嵌入到MFC窗体中时产生中断错误。

风格用UI_WNDSTYLE_CHILD会报错,用UI_WNDSTYLE_DIALOG/FRAME就不会。
窗体创建代码如下:

    // TODO: 在此添加额外的初始化代码

    if (m_dlgDuilib == NULL)
    {
        m_dlgDuilib.Create(this->m_hWnd, _T("DUIMainFrame1"), UI_WNDSTYLE_CHILD, 0, 0, 0, 800, 600);
        //NULL, UI_WNDSTYLE_DIALOG & (~(WS_BORDER | WS_CAPTION)), 0, 0, 0, 800, 600);
    }
    m_dlgDuilib.CenterWindow();
    m_dlgDuilib.ShowWindow(TRUE);

报错:UIBase.cpp


    void CWindowWnd::CenterWindow()
{
    ASSERT(::IsWindow(m_hWnd));
    ASSERT((GetWindowStyle(m_hWnd)&WS_CHILD)==0);
    RECT rcDlg = { 0 };
        ...
}

中断处:ASSERT((GetWindowStyle(m_hWnd)&WS_CHILD)==0);