user interface - Weird outputs from SendMessage on 64-bit Windows -
i'm sort of new windows gui programming. got code works fine on 32-bit windows go weird on 64-bit win7 (same exe).
lwg_cedit_get( m_hwnd, idc_edit_num_test, g_tmp_str, 4096 );
where lwg_cedit_get defined as:
#define lwg_cedit_get(h,id,v,m) \ ((*((u32*)(v))=(m)),sendmessage(getdlgitem((h),(id)),em_getline,0,(lparam)(char*)(v))
on winxp 32, gives me g_tmp_str="1"
(of course inputted '1' textfield in dialog). but, on win7 64, gives me g_tmp_str=""
(oops, weird character can't shown in stackoverflow, whatever, odd char. [0]=49'1' [1]=16'').
generally speaking, 32bit exe program can work flawlessly on win7 64, so, why program failed? thanks.
edit 1: iswindowsunicode(m_hwnd) returns false.
see last comments of topic.
Comments
Post a Comment