You may want to consider VisualWorks 7.7 (which should be released Real Soon Now). The implementation for WindowsInputManager class>>initializeEncoder (in VisualWorks 7.7) reads:
initializeEncoder
Encoder := Win32SystemSupport vmPreferredEncoding = #UTF16
ifTrue: [ UnicodeCharacterEncoder new ]
ifFalse: [ CharacterEncoderPool.MS_CP_1252 ]
This goes along with other Locale enhancements (including more accurate information about the platform's locale and encoding settings, the better to set values in VisualWorks to match) and should be available in release soon. The number of locales included increases from 15 to over 400.
Les Kooyman
Cincom