'VisualStudio'에 해당되는 글 1건


예를 들어서 VS2008 에서 다이얼로그 프로젝트를 생성한후,
ListControll 을 다이얼로그에 추가 합니다.
그리고 리스트 컨트롤에 더블클릭 이벤트를 추가하게 되면 코드가 다음과 같이 자동으로 생성됩니다.

void CHTS_DEMO4Dlg::OnNMDblclkList1(NMHDR *pNMHDR, LRESULT *pResult)
{
 LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<NMITEMACTIVATE>(pNMHDR);
 // TODO: Add your control notification handler code here
 *pResult = 0;
 MessageBox(L"TestDBClick@!");
}


그리고 컴파일을 하게 되면 황당하게 에러가 나지요.

error C2440: 'reinterpret_cast' : cannot convert from 'NMHDR *' to 'NMITEMACTIVATE'

어이 없습니다. ㅋ

이럴땐 그냥 소스에 포인터 하나 찍어주세요

void CHTS_DEMO4Dlg::OnNMDblclkList1(NMHDR *pNMHDR, LRESULT *pResult)
{
 LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<NMITEMACTIVATE *>(pNMHDR);
 // TODO: Add your control notification handler code here
 *pResult = 0;
 MessageBox(L"TestDBClick@!");
}

그럼 컴파일 성공~! ㅋㅋ

참 어이없는 버그 리포팅 이었습니다. ㅋ
자동으로 생성해주는 코드에 이런 어이없는 버그가 있다니.. -_-;;;
SP1 나왔다는데 그걸 설치하면 고쳐졌을려나요..? ^^

블로그 이미지

하루하루

하루하루를 열심히 살아가는 그런 사람이 되고자 합니다. 오늘을 후회없이 말이지요.

댓글을 달아 주세요