Services For Macintosh Uses Default Locale Translation Table to Map Localized Characters

ID: Q239474


The information in this article applies to:
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Professional
  • Microsoft Windows 2000 Server


SYMPTOMS

Localized Macintosh clients may not be able to interoperate properly with SFM shares on computers running Services for Macintosh (SFM), even though Windows 2000 provides native support for multiple languages.

For example, when a Japanese Macintosh client attempts to open a file (through a SFM share) saved by a computer running Japanese Windows NT Workstation to a U.S.-based server, the file name may be displayed on the Macintosh computer as ?????????.txt rather than the proper file name. The file is also reported as corrupt or unreadable by the Japanese Macintosh computer when you attempt to open it.


CAUSE

This problem occurs because the MacOS does not currently support the Unicode standard, but does support ANSI.


RESOLUTION

To resolve this problem and support both Japanese and U.S. clients from a U.S.-based server, change the default system locale to Japanese on the U.S.-based server. To do this:

  • Click Start, point to Settings, click Control Panel, and then double-click Regional Options.


  • Click the General tab.


  • Click Set Default.


  • Select Japanese from the drop-down list, and then click OK.


NOTE: This resolution is most effective when you attempt to support one single byte and one double byte character set (DBCS) language from the same server. It does not work effectively when multiple DBCS languages need to be supported on the same computer running Windows 2000.


STATUS

Microsoft has confirmed this to be a problem in Microsoft Windows 2000.


MORE INFORMATION

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 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 supports both s-jis and Unicode, so the Japanese Windows NT client can read files created by Japanese Macintosh clients. However, because Macintosh does not support Unicode, the following process occurs when a 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. For additional information about Unicode, click the article number below to view the article in the Microsoft Knowledge Base:
Q227483 Windows 2000 Supports Unicode Version 2.0
The Unicode Consortium's home page is located at:
http://www.unicode.org/

Additional query words:

Keywords :
Version : WINDOWS:2000
Platform : WINDOWS
Issue type : kbprb


Last Reviewed: December 29, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.