我想使用SendMessage函數顯示列表框的內容。然而,當我按下按鈕執行下面的一段代碼,我得到以下段錯誤在我的代碼,當我打電話Win32 C++:顯示列表框的內容
SendMessage(hwndLBox,LB_GETTEXT,k,(LPARAM)lBoxitems);
段錯誤(dbgheap.c):
extern "C" _CRTIMP int __cdecl _CrtIsValidHeapPointer(
const void * pUserData
)
{
if (!pUserData)
return FALSE;
if (!_CrtIsValidPointer(pHdr(pUserData), sizeof(_CrtMemBlockHeader), FALSE))
return FALSE;
return HeapValidate(_crtheap, 0, pHdr(pUserData));
}
引起守則此段錯誤:
else if(LOWORD(wParam)==ID_BUTTON_CALC){
int getLboxitems = SendMessage(hwndLBox,LB_GETCOUNT,NULL,NULL);
char * lBoxitems = new char[getLboxitems];
for(unsigned int k=0; k < getLboxitems; k++){
SendMessage(hwndLBox,LB_GETTEXT,k,(LPARAM)lBoxitems);
MessageBox(hwnd,lBoxitems,"Listbox says",NULL);
}
delete[] lBoxitems;
}
我正在使用Visual Studio Beta 2011編譯我的代碼。
這就是我一直在尋找的!我輸入這個代碼將進入我的算法,需要字符串。謝謝! –