Microsoft KB Archive/251412

= OL97: How Outlook for Windows Saves Macintosh Attachments to Maximize Compatibility =

Article ID: 251412

Article Last Modified on 1/27/2007

-

APPLIES TO


 * Microsoft Outlook 97 Standard Edition

-



This article was previously published under Q251412



IMPORTANT: This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows Registry



SUMMARY
To preserve data in Macintosh file attachments, Outlook for Microsoft Windows searches a registry key to determine if the attachment was created on the Macintosh platform. If so, Outlook saves the attachment to maximize compatibility with Macintosh programs. If a Macintosh file becomes unusable when it is saved in Outlook for Windows, you may need to add a value in the Windows registry for the file's creator, file type, and default Windows extension. This article describes how to do this.



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 wants 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: ::

Data Type: REG_SZ

Value: <.ext>

 On the Registry menu, click Exit.</li></ol>

NOTE: The, , 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.

Additional query words: mac adobe photoshop aldus freehand

Keywords: kbhowto kbinfo KB251412

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.