26 Nov
2002
26 Nov
'02
4:13 a.m.
"yf" <fyou(a)dsguardian.com> wrote:
if ( IsLegalDBCSChar_cp936( *str_src, *(str_src+1) ) ) { - str2b_dst->byte1 = *str_src; - str2b_dst->byte2 = *(str_src+1); + str2b_dst->byte1 = *str_src&0x7f; + str2b_dst->byte2 = *(str_src+1)&0x7f;
This doesn't seem right, the values for cp936 byte2 apparently go from 0x40 to 0xfe. Any cp936 experts out there? But if I modified, the Chinese character can be printed, otherwise it is a rectangular.
Have you tried to mask only byte1? -- Dmitry.