CControlUI* CDialogBuilder::CreateFromResource(UINT nRes, IDialogBuilderCallback* pCallback /*= NULL*/) { HRSRC hResource = ::FindResource(CPaintManagerUI::GetResourceInstance(), MAKEINTRESOURCE(nRes), _T("XML")); if( hResource == NULL ) return NULL; HGLOBAL hGlobal = ::LoadResource(CPaintManagerUI::GetResourceInstance(), hResource); if( hGlobal == NULL ) { FreeResource(hResource); return NULL; } CStdString sXML; sXML.Assign(static_cast<LPCTSTR>(::LockResource(hGlobal)), ::SizeofResource(CPaintManagerUI::GetResourceInstance(), hResource)); sXML.Replace(_T("\\n"), _T("\n")); ::FreeResource(hResource); return Create(sXML, pCallback); }