パフォーマンスを向上させるために MFC 仮想リスト コントロールを使用し、GetDispInfo(NMHDR* pNMHDR, LRESULT* pResult)を処理して ListCtrl を設定しました。そのメソッドの関連コードは次のとおりです。
if (pItem->マスク && 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() を使用すると、上下にスクロールすると、test_list_control.exe の 0x7c80c741 で First-chance exception: 0xC0000005: Access violation writing location 0xb70bf2ac という例外が大量に発生します。これらのメッセージは、デバッグ出力に表示されます。しかし、プログラムはクラッシュしません。ここで何が問題なのか、どうすればそれを克服できるのか説明してもらえますか??
rLabel は、先ほど宣言した CLabelItem です。
ありがとうございました!