In the realm of cross-platform file sharing, sometimes the end users are not aware of the limitations posed by the operating system. This article will explain which characters can cause problems with files that use these characters.
The Windows operating system can use two different file systems, Protected-Mode File Allocation Table (FAT) file system and the New Technology File System (NTFS). The two systems have much in common, but the characters permitted in a file or folder name may differ. In the conventions listed below, it is true for both systems unless otherwise specified. Specifically there are cases where NTFS does not have the limitations (see note below).
The following characters are invalid as file or folder names on Windows using NTFS:
The following file names are also reserved under Windows:
Note: The previous conventions are true only if the application used in managing them does not use the Unicode API. Although the file system may support most of the above mentioned conventions the operating system may not. For example the NTFS file system allow paths to have a length up to 32,767 characters with each component (folder, file, etc.) being limited to 255 characters. However some windows applications like Explorer, for example, may not behave correctly in this circumstance. Other software, like ExtremeZ-IP uses the Unicode API so that file and folder names with invalid characters may be stored onto the NTFS file system.
Below the Macintosh conventions will touch upon the fact that the colon “:” is an invalid character in the Macintosh Operating Systems. Under Windows and the NTFS file system the colon is an illegal character, because it is used to open alternate file streams. However all other characters can be moved on and off the NTFS file system if a program with Unicode support is used. Both ExtremeZ-IP and MassTransit support this Unicode filenaming convention.
Since Mac OS X is build on top of UNIX there are a few inherent conventions that OS 9 users may not expect. Because of this, migrating certain files and folders from OS 9 to OS X may cause unexpected behavior.
The following setting is located in the MassTransit.cfg file:
%% MAP_INVALID_FILESYSTEM_CHARACTERS_AS_UNICODE = TRUE
If this value is false, MT will convert Unicode characters to a dash so filenames can be interpreted more clearly on Windows. Unicode characters do not appear in the filenames on Windows.
Set this value to true to disable replacing Unicode characters with '-'. Unicode characters will be preserved for files on Windows.
Note: When you make changes to the MassTransit configuration files you need to restart the MassTranist services for the changes to take effect. The correct way to do this operation is to stop the MassTransit Engine service, restart the MassTransit Transporter and start the MassTransit Engine again.
MassTransit 6.0.2 and later support transfers of files and folders with Unicode characters in TCP/IP, TCP/IP Secure, and UDT file transfers. By default, MassTransit will queue and transfer files and folders with high Unicode (>0xFF) successfully across the MassTransit protocol (TCP/IP, TCP/IP Secure, and UDT connections).
Note: Note that Unicode is not fully supported for web client HTTP transfers, hot folder transfers, FTP transfers, or with AppleScript. If you have Unicode support enabled and use Unicode filenames with these features, you may encounter file not found errors or munged filenames.
Note: Having Unicode support enabled on your server will still fail to transfer Unicode characters when connecting to legacy servers or servers with Unicode support disabled.
Polling and sending of Unicode files and folders is enabled by default, but can be disabled by editing the MassTransit.cfg file in the MassTransit application folder which by default is located in:
C:\Program Files (x86)\Acronis\MassTransit Server
C:\Program Files\Group Logic\MassTransit Server
C:\Program Files (x86)\Group Logic\MassTransit Server
C:\Program Files\Group Logic\MassTransit Server 7
To disable unicode support:
There are a number of limitations to Unicode support:
Note: It is highly recommended that you use the default settings for the existing Unicode flags – Replace Invalid Characters in File Names general privilege should be set to off for all contacts if Unicode is enabled and MAP_INVALID_FILESYSTEM_CHARACTERS_AS_UNICODE should be set to TRUE (or commented out) in the MassTransit.cfg file.
Below are a few scenarios that show what can happen if file names that are acceptable on one operating system are moved to another operating system:
Example 1:
Example 2:
Example 3:
Note: For more information on file naming refer to the following site: Microsoft Naming Conventions