Пример #1
0
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);
}