By default, when a Windows NT client saves a file to a computer running Windows NT Server, the computers use Remote Procedure Call (RPC) to save the file as Unicode. The U.S.-based server stores DBCS files properly because Windows NT has native support for Unicode, even if it does not have the code pages installed to properly view the file. Thus, a Japanese Windows NT or Windows 2000 client can save and retrieve a DBCS file from a U.S.-based server and display it properly.
However, when a Japanese Macintosh computer that is running Mac OS 9 saves a file on a SFM share on a U.S.-based computer running Windows NT Server, the file is stored in the native ANSI character set (shift-jis), rather than Unicode. The Japanese versions of Windows NT and Windows 2000 support both s-jis and Unicode, so the Japanese Windows NT client can read files created by Japanese Macintosh clients. However, because Mac OS 9 does not support Unicode, the following process occurs when the Macintosh client requests a file from a computer running SFM.
-
SFM checks the file to see if it is formatted in Unicode. Unicode files can
be identified when opened with a hexadecimal editor by the first four nibbles, which are always FF FE (assuming UTF-8 encoding).
- If the file is formatted with Unicode, SFM translates the file into native ANSI format, based on the default system locale.
- The translated file is sent to the Macintosh client.
The default code page for Windows NT and Windows 2000 is defined in the following registry location:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
OEMCP=<value> defines the default NT code page
MACCP=<value> defines the default Macintosh code page
For example, if the default Windows NT code page setting is
US English (code page 409), SFM maps the Unicode file to the ASCII/ANSI table. If the file is actually a Kanji file, the contents are interpreted incorrectly by this process, and thus are displayed incorrectly on the Japanese Macintosh client. Currently, there is no way for SFM to detect that the client is localized to a different language other than the server running SFM because of limitations in the AppleTalk File Protocol Specifications. Therefore, when all files are converted from Unicode, they are mapped to the code page translation table of the default system locale. This procedure occurs regardless of the localization of the Macintosh client.
The Unicode Consortium's home page is located at: