2009-09-22 09:05:17 UTC
Hi,
First I'll say thanks for providing this framework. I needed to de-mfc some code and Win32++ has been a godsend. Sadly after updating to 6.61 from 6.5 I have had some trouble.
One problem was easy to track down and fix. The destructor of CDialog no longer calls Destroy() so my code crashed when a CDialog object was destroyed without first closing the dialog. Not a big problem but I'm curious as to why you made that change.
The second problem has me baffled. One dialog has a listview which was working fine in 6.5 (after I fixed the GetItemData() bug. Sorry about that unnecessary bug report.) but now clicking an item in the listview causes a crash.
My code handles listview selection changes in the dialog's OnNotify(). Looking at dialog.h, I can see that the WM_NOTIFY block in DialogProcDefault() has been cut down and I *think* this may be the source of my problem but I have to admit that some of this stuff is a bit over my head.
Nothing has changed other than the Win32++ version but now the calls to GetItemData() are returning a bad pointer where previously everything worked perfectly. Please could you explain why the WM_NOTIFY code was changed and what impact the changes have on how notifications from child controls, especially listview controls, should be handled?
Thanks