MORE INFORMATION
Macintosh files are multipart; they have a resource fork and a data fork. In file system terminology, we can refer to the two forks as streams. The Macintosh operating system stores resource information, such as the file's creator and file type, in the resource fork. Some Macintosh programs also store data necessary for program execution in the resource fork. The data fork contains data that a user wishes to store, retrieve, or modify similar to the data that Windows programs store in files.
The NTFS file system (NTFS) can be extended to accommodate storage of Macintosh multipart files using Services for Macintosh; however, the File Allocation Table (FAT) file system cannot. Windows programs cannot use NTFS or FAT to create a file that conforms to the Macintosh File System Specification (FSSpec), which includes creator, file type, and scriptTag data. The Windows operating system provides a registry that programs can use to maintain this resource information. Microsoft programs that must be platform independent, such as Outlook or Microsoft Internet Explorer, maintain a conversion table in the Windows registry for this purpose.
Software vendors who provide software for both Macintosh and Windows platforms typically write the Windows version so that the user's data is stored in a single stream in a Windows file. This single part file contains the same data that would be stored in the data fork in a Macintosh multipart file. When the file created by the Windows version is transferred to the Macintosh platform, the Macintosh operating system transforms it into a multipart file by storing the data in a data fork and creating a resource fork. The Macintosh operating system uses the desktop database, a hidden Macintosh file, in combination with program preference files to create the contents of the resource fork. The resource fork contains, at a minimum, the creator and file type information needed to start the program in the Finder.
In keeping with this generally accepted practice, whenever Outlook for Windows determines that an attachment is of Macintosh origin it ignores the resource fork, which cannot be used, and stores the data fork in a single file stream. To determine whether a file was created on the Macintosh platform, Outlook searches the file header for the file's creator and file type. Outlook then checks the registry key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Client\Macintosh File Types
to determine whether an attachment is a Macintosh binary file. If Outlook finds a matching creator and file type in the
Macintosh File Types subkey, it ignores the file's resource fork and saves the data fork when it saves the attachment. If Outlook does not find a value in the registry subkey for the corresponding creator and file type, it stores all file data, both resource and data forks, in a single file stream. To do otherwise would risk corrupting a file that might not have been created on the Macintosh platform.
When a Macintosh program opens a file that has been created on the Windows platform, the Macintosh operating system treats the file as if it contains only data fork information. In the case where Outlook was unable to determine Macintosh compatibility and consequently stored an attachment's resource fork and data fork in a single file stream, the data fork that the Macintosh operating system creates includes the information from the resource fork. Because the data fork now contains resource information, the file appears corrupted to the Macintosh program.
If a Macintosh binary file becomes unusable when Outlook saves it, you may need to add a value in the Windows registry for the file's creator, file type, and default Windows extension. This avoids storing information from the resource fork in the same file stream as the data fork. To find the file's creator and file type, view it with ResEdit, a Macintosh utility. To determine the default Windows extension, use a Windows version of the program, or check the software documentation.
WARNING: If you use Registry Editor incorrectly, you may cause serious problems that may
require you to reinstall your operating system. Microsoft cannot guarantee that you can solve
problems that result from using Registry Editor incorrectly. Use Registry Editor at your own
risk.
To Add the Appropriate Value to the Registry
- Click Start, and click Run.
- In the Open box type regedit.
- Locate the following key in the registry:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Client\Macintosh File Types
- On the Edit menu, click Add Value, and add the following registry values:
Value Name: :<creator>:<type>
Data Type: REG_SZ
Value: <.ext>
- On the Registry menu, click Exit.
NOTE: The <creator>, <type>, and <.ext> values are determined by your research on the file's creator, type, and default Windows extension. For example, for an Aldus Freehand version 7 file, add the following registry values:
Value Name: :FH70:AGD2
Data Type: REG_SZ
Value: .fh7
Some Macintosh files, such as font files and other binary files, store instance-specific executable code or data in the resource fork. Since the resource information varies from one binary file to another, a Macintosh program cannot use the desktop database to recreate it. Because Outlook for Windows stores any data from an attachment in a single file stream, there are two possible scenarios when it saves a binary file attachment.
- If Outlook for Windows cannot verify that the file was created on the Macintosh platform, information in the resource fork is stored in what becomes the data fork when the file is exported to the Macintosh platform. Since a Macintosh program can only use resource information when it is stored in the resource fork, the file cannot be used when it is exported to the Macintosh platform.
- If Outlook for Windows determines that the file was created on the Macintosh platform, it ignores the resource fork, and the newly created file does not contain the resource information when the file is exported to the Macintosh platform. Since a Macintosh program cannot recreate instance-specific resource information, it cannot use the file.
In both scenarios, the binary file attachments cannot be used after Outlook for Windows saves them. This is the inevitable result of the fundamental differences between the Macintosh and Windows file systems.