MORE INFORMATION
Definition of a temporary file
A temporary file is a file that is created to temporarily store
information in order to free memory for other purposes, or to act as a safety
net to prevent data loss when a program performs certain functions. For
example, Word determines automatically where and when it needs to create
temporary files. The temporary files only exist during the current session of
Word. When Word is shut down in a normal fashion, all temporary files are first
closed and then deleted.
Why does Word create temporary files?
Speed:
If there is not enough memory available to keep
the document with all its edits in memory and still perform manipulations such
as sorting, dragging, scrolling, and so on quickly along with any other
applications that are running, then Word moves part of its code that is not
being used or part of the document that is not being edited from memory to
disk. This movement to temporary files on disk frees more memory for text
manipulation or storage of the parts of the document that are being actively
edited.
Data Integrity:
Word uses temporary files as a
"safety net" to protect against system errors in its file-saving scheme. By
saving to a temporary file first and then renaming the file to the proper name,
Word ensures the data integrity of your original file against problems (such as
a power failure or lost network connections) that may occur while the file is
being written.
Types of temporary files
MS-DOS-Based File:
These are standard MS-DOS files.
Document-File-Based File:
The difference between this
file and a traditional MS-DOS file is that multiple programs can read and write
to these files without the original owner knowing about it. Additionally,
document files have inherent properties that allow Word to create files and
directories within files. At startup, Word creates one temporary (direct)
document file called ~wrfxxxx.tmp. You can determine that it is a document file
because the initial size is 1,536 bytes. This temporary document file is used
to store all OLE objects that belong to unnamed documents, Undo, the Clipboard,
and documents whose native formats are not document format (for example, .txt,
.rtf, and Word 2.0 documents). Word can open document files using two different
modes: transacted and direct. These modes are discussed later in this article.
Transacted Document Files:
Transacted files allow Word to
open a file, write to it, and have other programs--such as Microsoft
Excel--write to it, but still retain the right to restore the file to the state
it was in when Word first opened it.
To do this, the document file
creates ghost images (typically ~dftxxxx.tmp) of all the changes made to the
file after it was opened; if Word keeps all the changes, the contents of
~dftxxxx.tmp merge with the original file, and then saves a complete version of
it. Conversely, if Word discards all changes, then ~dftxxxx.tmp is deleted, and
the original file does not change. Word opens all of the Word native files
using transacted files, which create ghost images in the Temp directory. When
you start Word, Normal.dot is typically opened in transacted mode, and a ghost
file is created for it called dftxxxx.tmp. FastSave, for example, merges these
two files when a save occurs.
Direct:
Word uses direct
storage when opening the temporary document file and when performing either a
Save As or a Full Save (non-FastSave save). This type of file is a low (if any)
consumer of memory and does not create a ghost image when created or opened.
Specific files that Word creates
The following tables list some of the specific temporary files
that Word creates.
Files typically created when Word is started File name
------------------------------------------------------------------------
MS-DOS-based file (to reserve 4 file handles) 0 bytes ~wrf0000.tmp
MS-DOS-based scratch file 0 bytes ~mfxxxx.tmp
Compound file - transacted 0 bytes ~dftxxxx.tmp
Compound file - direct 1536 bytes ~wrf0001.tmp
(unnamed non-Word/OLE files)
Word recovery files File name
-----------------------------------------------------------------------
Temporary file for AutoRecovery ~wraxxxx.tmp
AutoRecovery AutoRecovery save of <docname>.asd
Other Word temporary files File name
-----------------------------------------------------------------------
Copy of another document ~wrcxxxx.tmp
Word document ~wrdxxxx.tmp
Temp document file ~wrfxxxx.tmp
Dictionary ~wrixxxx.tmp
Clipboard ~wrlxxxx.tmp
Macro ~wrmxxxx.tmp
Word OLE document ~wroxxxx.tmp
Scratch file ~wrsxxxx.tmp
Converted (foreign) document ~wrvxxxx.tmp
A simplified view of the scheme used to save an edited file
Create temp file Create ~wrdxxxx.tmp
Write temp file Save example data to ~wrdxxxx.tmp
Delete original file Delete EXAMPLE.DOC
Move temp to target name Move ~wrdxxxx.tmp to Example.doc
Word gains significant performance speed by placing the temporary
file in the same directory as the saved file. If Word placed the temporary file
elsewhere, it would have to use the MS-DOS COPY command to move the temporary
file from the other directory to the saved location. By leaving the temporary
file in the same directory as the saved document file, Word can use the MS-DOS
MOVE command to quickly designate the temporary file as the saved document.
When and where Word creates temporary files
The location where Word creates the temporary files is hardcoded
information and cannot be edited. In general, Word creates temporary files for
the following types of data.
Embedded Word Objects (Temp
Directory):
When Word acts as an OLE server program, the embedded
Word objects are stored as temporary files in the Temp directory.
OLE 2.0 requires extra drive storage. When you start OLE programs, Word needs
to provide copies of the data to the server. It is not unusual for extensive
OLE 2.0 usage in a single session of a program to accumulate a large amount of
temporary storage on the hard drive.
Scratch File (Temp Directory):
When Word runs
out of internal random access memory (RAM), it always creates a single
temporary scratch file in the Temp directory to hold information. This scratch
file holds information that is swapped out from the Word internal file cache,
which is allocated from global system memory. The scratch file varies in size
from 64 kilobytes (KB) to 3.5 megabytes (MB).
The default cache size
in Word is 64 KB.
For more information about increasing the cache size in
Word, click the following article number to view the article in the Microsoft Knowledge Base:
212242
Where settings are stored
in the registry for Word 2000
Recorded Macro (Temp Directory):
When
you record a macro, Word creates a temporary file in the Windows Temp
directory.
Converted Files (Temp Directory):
The word
processor converters supplied with Word create temporary files in Rich Text
Format (RTF), which Word uses to access specific converters.
Locked
Files (Temp Directory):
When you open a file that is locked, either
because it is open in another window of Word or because another user on the
network has it open, you can work with a copy of the file. Word places this
copy in the Windows Temp directory. Likewise, if a template attached to a
document is locked, Word automatically makes a copy of the template in the Temp
directory. The copy of a locked file does not automatically update the original
owner's file.
Saved Files (Same Directory as the Saved File):
When you click
Save on the
File menu, the following happens:
- Word builds a new temporary file using the edited version
of the document.
- After Word creates the temporary file, Word deletes the
previous version of the document.
- Word renames the temporary file to the same name as the
previous version of the document.
Text Pasted Between Files (Same Directory as Source File):
When Word copies and pastes between documents, it may create a
temporary file in the same directory as the source file--especially if the
source file is saved or closed. The temporary file represents the information
that was referenced by the Clipboard prior to saving the file. Word creates
this temporary file by renaming the old copy of the file to a temporary file
name.
Owner File (Same Directory as Source File):
When a
previously saved file is opened for editing, printing, or review, Word creates
a temporary file with a .doc file name extension that begins with a tilde "~"
followed by a dollar sign "$" followed by the remainder of the original file
name. This temporary file holds the logon name of person opening the file and
is known as the "owner file."
When you try to open a file that is
available on a network and is already open by someone else, this file supplies
the <
user name> for the following error message:
This
file is already opened by <user name>. Would you like to make a copy of this file for your use?
If the Owner File is damaged or missing the error message changes
to:
This file is already opened by another user. Would
you like to make a copy of this file for your use?
Note Word automatically deletes this temporary file when the original
file is closed from memory.
When you open a file by using the http or ftp protocol, the file is first copied to the temp directory. Then, the file is opened from the temp directory.
Automatic Save:
Word Auto
Recover Save Directory:
The temporary file created when Word
performs an automatic save is stored in the Temp folder, unless there is not a
valid Temp folder; Word then saves the temporary file in the same folder where
it saves the document.
The location of temporary files when you close a file
Word may occasionally have to maintain a link to a file after it
is closed. This occurs when text has been copied to the Clipboard from the
file. When you close a file, Word attempts the following actions:
- If the selection that was copied to the Clipboard does not
contain multiple sections or a picture, or is not large, Word copies the piece
of the document to the scratch file.
- If the copied selection does contain pictures or multiple
sections, or if the file is on a floppy disk, Word copies the entire file to
the Temp directory and moves the pointer there.