|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| Yes
| Import Library
| kernel32.lib
| Header File
| winbase.h
| Unicode
| WinNT
| Platform Notes
| None
|
|
|
GetTempFileName
The GetTempFileName function creates a name for a temporary file. The filename is the
concatenation of specified path and prefix strings, a hexadecimal string formed from a
specified integer, and the .TMP extension.
The specified integer can be nonzero, in which case, the function creates the
filename but does not create the file. If you specify zero for the integer, the
function creates a unique filename and creates the file in the specified
directory.
UINT GetTempFileName(
LPCTSTR lpPathName,
| // address of directory name for temporary file
| LPCTSTR lpPrefixString,
| // address of filename prefix
| UINT uUnique,
| // number used to create temporary filename
| LPTSTR lpTempFileName
| // address of buffer that receives the new filename
| );
|
|
Parameters
lpPathName
Points to a null-terminated string that specifies the directory path for the
filename. This string must consist of characters in the ANSI character set.
Applications typically specify a period (.) or the result of the GetTempPath function for this parameter. If this parameter is NULL, the function fails.
lpPrefixString
Points to a null-terminated prefix string. The function uses the first three
characters of this string as the prefix of the filename. This string must
consist of characters in the ANSI character set.
uUnique
Specifies an unsigned integer that the function converts to a hexadecimal
string for use in creating the temporary filename.
If uUnique is nonzero, the function appends the hexadecimal string to lpPrefixString to form the temporary filename. In this case, the function does not create
the specified file, and does not test whether the filename is unique.
If uUnique is zero, the function uses a hexadecimal string derived from the current
system time. In this case, the function uses different values until it finds a
unique filename, and then it creates the file in the lpPathName directory.
lpTempFileName
Points to the buffer that receives the temporary filename. This
null-terminated string consists of characters in the ANSI character set. This buffer should
be at least the length, in bytes, specified by MAX_PATH to accommodate the path.
Return Values
If the function succeeds, the return value specifies the unique numeric value
used in the temporary filename. If the uUnique parameter is nonzero, the return value specifies that same number.
If the function fails, the return value is zero. To get extended error
information, call GetLastError.
Remarks
The GetTempFileName function creates a temporary filename of the following form:
path\preuuuu.TMP
The following table describes the filename syntax:
Component
| Meaning
| path
| Path specified by the lpPathName parameter
| pre
| First three letters of the lpPrefixString string
| uuuu
| Hexadecimal value of uUnique
|
When Windows shuts down, temporary files whose names have been created by this
function are not automatically deleted.
To avoid problems resulting from converting an ANSI character set string to a
Windows string, an application should call the CreateFile function to create a temporary file.
If the uUnique parameter is zero, GetTempFileName attempts to form a unique number based on the current system time. If a file
with the resulting filename exists, the number is increased by one and the test
for existence is repeated. Testing continues until a unique filename is found. GetTempFileName then creates a file by that name and closes it. When uUnique is nonzero, no attempt is made to create and open the file.
See Also
CreateFile, GetTempPath
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
More Online Helps
Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|