Dan Kegel dank@kegel.com wrote:
That looks like a horrible kludge. Before we settle on something like this, we should probably consult the people on the unicode mailing list to see what they suggest.
This is not what I suggest. Please read my complete mail. I wrote:
I did a test on w2k trying to convert all chars between 0 and 255. The result was:
Just 'a' .. 'z' are converted to 'A' .. 'Z', all other characters remain unchanged.
I switched the machine between 'EN' (English) and 'DE' (German) and no difference.
My test Function is:
static void test_RtlUpperChar(void) { int i; CHAR ch; CHAR upper_ch; CHAR expected_upper_ch;
for (i = 0; i <= 255; i++) { ch = (CHAR) i; upper_ch = pRtlUpperChar(ch); if (ch >= 'a' && ch <= 'z') { expected_upper_ch = ch - 'a' + 'A'; } else { expected_upper_ch = ch; } /* if */ ok(upper_ch == expected_upper_ch, "RtlUpperChar('%c') has result '%c', expected '%c'", ch, upper_ch, expected_upper_ch); } /* for */ }
... and this test passed really under native w2k.
Greetings Thomas