Article ID: 919596 - View products that this article applies to.
This article describes the way that Microsoft Office Outlook 2007 locates forms, where the forms cache is located, how to change the size of the forms cache, and how to use the ForceFormReload registry key. This article also describes some problems that may occur with the Outlook forms cache. Finally, this article describes ways to troubleshoot these problems.
This article describes the Outlook forms cache. This article also describes various forms cache problems that may occur in Outlook 2007.
Note The Outlook forms cache is used for forms that are designed with Outlook 2003 or earlier versions and that are typically published to a forms library. Outlook 2007 also enables you to design forms for Outlook 2003 and earlier versions. In this scenario, the forms cache is used in the same way as the forms cache is used in earlier versions. However, Outlook 2007 does not use the forms cache with the new form regions feature. Outlook 2007 only uses the forms cache in scenarios that involve custom message classes. If you are developing a new custom form for Outlook 2007, we recommend that you use the new form region feature.
Outlook stores a local copy of a custom form in a cache so that Outlook does not have to retrieve the form from the disk every time that an item is opened. When forms are stored in a Microsoft Exchange public folder or in the Organizational Forms library on the Exchange Server computer, Outlook can use the cached version of the form. This helps improve performance on the local computer and on the Exchange Server computer.
Problems may occur with the forms cache. These problems typically occur when you open a new item or an existing item in a folder. You may receive one of the following error messages:
How Outlook locates formsThis section describes how Outlook locates the form that is required when you open an item. When you first create an item that uses a custom form, the Message Class field of the item is set to the name of the form. For example, if you have a custom task form that is named "Corporate" in a custom task folder, the message class is IPM.Task.Corporate.
When you open the item, Outlook checks the Message Class field to see what form Outlook must use to display the item. Outlook then searches for the required form. Outlook looks in the following locations in the following order:
Locate the forms cacheThe forms cache is stored in a hidden folder on the hard disk drive. You must change the setting so that Microsoft Windows shows hidden files and system files. These steps vary depending on the version of Windows that you are using. You may locate the forms cache in the following folder:
Understand the forms cache architectureImportant This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
(http://support.microsoft.com/kb/322756/ )How to back up and restore the registry in Windows
The forms cache contains the Frmcache.dat file. The Frmcache.dat file contains summary information and pointers to both the default Outlook forms and any custom forms that you use. Cached copies of custom forms reside in subfolders of the Forms folder.
The subfolders of the Forms folder have random names. However, the names of the subfolders resemble the names of the forms. The actual forms that are stored in these folders are cryptically named. But the forms have a .tmp file name extension. If you do not know the folder that contains the copy of a particular form, you can use the time stamp of the folder or the time stamp of the form to help you locate the form.
Outlook also stores the registry keys that correspond to custom forms that have been cached. The registry keys are at the following location:
In Outlook 2002 and earlier versions, Outlook does not keep track of the place where a form came from when the form is cached. For example, assume that you have two different forms that are published in two different folders, and both forms have the same name. If you access the first folder, Outlook caches the form in that folder. Then, if you access the second folder, Outlook still uses the cached form from the first folder. Outlook does not use the form that is in the second folder. Therefore, every form name or Message Class field must be unique so that conflicts do not occur when you use forms. This has been the forms cache design since Microsoft Outlook 97 was released.
The forms cache for Outlook 2003 and Outlook 2007 uses a different design. Information about the folder and the forms library is also cached. A security-related issue led to the design change. For example, you may have ten different folders in Outlook 2003. You may publish a form with the same name in each of these ten folders. In earlier versions of Outlook, the form was cached one time, and then Outlook used the same form from the local forms cache every time because all the forms had the same name. However, Outlook 2007 caches the form from each folder.
Because of this change in design, we recommend that you publish forms to the Personal Forms Library instead of to a folder. If you delete an item based on a custom form, and then you open the item in the Deleted Items folder, Outlook cannot locate the custom form. Instead, Outlook uses the default form. If you publish forms to the Personal Forms Library, you can avoid this problem.
Understand and change the forms cache sizeBy default, Outlook sets a limit of 2048 kilobytes (KB) for the maximum size of the forms cache. To change this setting, follow these steps:
Note Outlook stores the size of the forms cache in the Frmcache.dat file. The format of the Frmcache.dat file is undocumented. Direct modification of the Frmcache.dat file is not supported. Therefore, you cannot programmatically change the size of the forms cache. Microsoft does not support direct modifications to any part of the contents of the Forms folder unless such changes are documented by Microsoft or recommended by Microsoft Product Support Services for troubleshooting only. Before you modify the contents of the Forms folder, you must first make a backup copy.
Recover forms that you have accidentally deletedIf you accidentally delete a published form, and you cannot recover that form from the folder that the form was published from, you may be able to recover a copy of the form from the forms cache.
For more information about how to recover a form from the forms cache, click the following article number to view the article in the Microsoft Knowledge Base:
(http://support.microsoft.com/kb/292494/ )OL2002: Restoring an Outlook form from a cached copy
Troubleshoot the forms cacheIf the forms cache does not seem to be functioning correctly, or if you have problems when you open items or when you open custom forms, other factors may be causing the unexpected behavior. Use the following troubleshooting methods before you delete the forms cache.
Clear the forms cacheThere are different methods to clear the Outlook forms cache. Each method has advantages and disadvantages. We recommend that you use method 1.
Use the ForceFormReload registry keyWhen the forms cache seems to cause problems intermittently, and you cannot determine the cause of the problems, you can set the
ForceFormReloadregistry key in Outlook. When the
ForceFormReloadregistry key is enabled, and Outlook encounters an error when Outlook opens an item that is based on a custom form, Outlook automatically clears the cache for this specific form. Then, Outlook tries to open the item again. Although this method does not correct the cause of the forms cache problem, this method does make the problem transparent to people who use custom forms.
To enable the
ForceFormReloadregistry key functionality, follow these steps:
Troubleshoot problems that occur when you open an item that is based on a specific custom formIf a problem occurs when you try to open an item that is based on a specific custom form, the problem may be related to that specific form and not to the forms cache itself. The following methods describe ways to troubleshoot problems with a specific form. You must perform the methods in the order that they are listed.