Я использовал элемент управления виртуальным списком MFC для повышения производительности и обрабатываю GetDispInfo (NMHDR * pNMHDR, LRESULT * pResult) для заполнения ListCtrl. Соответствующий код в этом методе выглядит следующим образом:
if (pItem-> mask && LVIF_TEXT)
{
switch(pItem->iSubItem)
{
case 0:
lstrcpy(pItem->pszText, rLabel.m_strText);
break;
case 1:
sprintf(pItem->pszText, "%d", p.o_Value);
break;
default:
ASSERT(0);
break;
}
}
Здесь, когда я использую lstrcpy (), когда я выполняю прокрутку вниз / вверх, я получаю множество исключений, говорящих Исключение первого шанса в 0x7c80c741 в test_list_control.exe: 0xC0000005: Место записи нарушения доступа 0xb70bf2ac . Эти сообщения появляются в выходных данных отладки. Но программа не падает. Может кто-нибудь объяснить, в чем здесь дело и как мне это преодолеть ??
rLabel - это CLabelItem, который я объявил ранее.
Спасибо!