Здравствуйте,с Днём Победы всех!
У меня следующий вопрос:считываю данные из XML файла,(создан из Аксессовской таблицы,чуть больше 500 записей).Вот фрагмент кода:
m_piDOM.CreateInstance(CLSID_DOMDocument);
if(m_piDOM->load(sSource) != VARIANT_TRUE)
{
wsprintf(pBuff,L"Unable to load the %s table \n",sSource);
throw pBuff;
}
m_piDOM->Putasync(FALSE);
////////
pNodeList = m_piDOM->getElementsByTagName(m_sTableName);
for(int i = 0; i < nCount; i++)
{
if(pNodeList->Getlength() == 0L)
{
wsprintf(pBuff,L"Emply NodeList of the %s table\n",m_sTableName);
throw L"Emply NodeList of the %s table\n";
}
pNode = pNodeList->Getitem((long)iIndex);
if(pNode == NULL)
{
wsprintf(pBuff,L"\nUnable to get %d item of %s able",iIndex,m_sTableName);
throw pBuff;
}
pNodeList = pNode->GetchildNodes();
if(pNodeList->Getlength() == 0L)
throw L"\n Empty sub-node list when trying to get PhoneModels item";
pNode = pNodeList->nextNode();
if(pNode == NULL)
throw L"\n Empty sub-node when trying to get PhoneModels::ID";
m_ulID = _ttol(pNode->Gettext().copy());
pNode = pNodeList->nextNode();
e.t.c
}
А проблемма в том что всё это работает очень медленно,даже учитывая то что код бежит на эмуляторе для WinCE 5.Есть ли способ улучшить перформанс,и есть ли надежда что на реальном борде будет ощутимо лучше?Спасибо.