FIX: Bad Characters in 32-bit App on Win32s on Russian Windows

ID: Q126865

The information in this article applies to:

SYMPTOMS

When compiling, linking, and running a Russian application which was built using Microsoft Visual C++ version 2 under on Windows NT version 3.5 the application runs correctly. If this application is run on Russian Windows version 3.1 with the Win32s libraries version 1.2 or 1.25 installed, some parts of the user interface appear as meaningless set of characters.

CAUSE

The strings in the resources are stored in UNICODE format. Yet you must pass all strings to Windows 3.1 in ANSI format. The drawing of the resources is done by Windows 3.1. Win32s simply reads the 32-bit resources, converts them to the 16-bit format equivalent, and passes the resources to Windows 3.1. One stage of the conversion is to convert the UNICODE strings into ANSI strings. This conversion for the Russian language is broken.

STATUS

Microsoft has confirmed this to be a problem in the product(s) listed at the beginning of this article. This bug was fixed in Win32s version 1.3.

Additional query words: Cyrillic Russia 2.00 garbage corruption

Keywords          : kbWin32s kbIntlDev 
Version           : 3.5 | 1.2 1.25 1.3
Platform          : NT WINDOWS
Solution Type     : kbfix

Last Reviewed: January 17, 1998