我在Visual Studio中的輸出窗口收到以下錯誤檢查狀態:第一次機會異常設置在列表視圖
First-chance exception at 0x5d0d47af (msvcr100d.dll) in Program.exe: 0xC0000005: Access violation reading location 0xcccccccc.
每次執行這段代碼時:
const int iItem = ListView_GetItemCount(hListOutput);
LVITEM lvI;
lvI.mask = LVIF_TEXT | LVIF_GROUPID;
lvI.iSubItem = 0;
lvI.iGroupId = 101;
lvI.iItem = iItem;
lvI.pszText = const_cast<LPWSTR>(mystr.c_str());
if (ListView_InsertItem(hListOutput, &lvI) != -1)
{
ListView_SetCheckState(hListOutput, iItem, TRUE);
}
如果我註釋掉ListView_SetCheckState
,我會停止訪問衝突。
正在插入所有項目並正在設置項目檢查狀態。
但我想弄清楚爲什麼我得到訪問衝突。
您是否記得調用'ListView_SetExtendedListViewStyle'設置'LVS_EX_CHECKBOXES'擴展樣式? 「ListView_SetCheckState」被記錄爲僅與'LVS_EX_CHECKBOXES'列表視圖一起使用。 – 2012-08-20 06:23:43