Consultor Eletrônico



Kbase 17391: How to Call WIN32 API Function: GetTempFileName
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/05/1998
How to Call WIN32 API Function: GetTempFileName

DISCLAIMER:
===========
The code example in this knowledgebase is for informational purposes
only. If you have specific questions about which API calls would be
best suited to your design goals, please consult your Microsoft
documentation.

INTRODUCTION:
=============
The following sample code shows how to call the Win32 API function
called GetTempFileName. This function creates a temporary file name.

This code has been tested on Windows NT 4.0 Workstation only.


DEFINE VARIABLE chrBuffer AS CHARACTER NO-UNDO FORMAT "X(128)".
DEFINE VARIABLE chrTempFile AS CHARACTER NO-UNDO FORMAT "X(128)".
DEFINE VARIABLE intRC AS INTEGER NO-UNDO.

ASSIGN chrBuffer = FILL(' ',128)
chrTempFIle = FILL(' ',128).

RUN GetTempPathA(INPUT 128, OUTPUT chrBuffer, OUTPUT intRC).

RUN GetTempFileNameA(INPUT chrBuffer,
INPUT 'IMG',
INPUT 0,
OUTPUT chrTempFile,
OUTPUT intRC).

IF intRc <> 0 THEN
MESSAGE chrTempFile VIEW-AS ALERT-BOX.
ELSE
MESSAGE "Function Call Failed" VIEW-AS ALERT-BOX.

PROCEDURE GetTempPathA EXTERNAL "KERNEL32.DLL":
DEFINE INPUT PARAMETER intSize AS LONG.
DEFINE OUTPUT PARAMETER chrBuffer AS CHARACTER.
DEFINE RETURN PARAMETER intRC AS LONG.
END PROCEDURE.

PROCEDURE GetTempFileNameA EXTERNAL "KERNEL32.DLL":
DEFINE INPUT PARAMETER chrpath AS CHARACTER.
DEFINE INPUT PARAMETER chrPrefix AS CHARACTER.
DEFINE INPUT PARAMETER intUnique AS LONG.
DEFINE OUTPUT PARAMETER chrTempFile AS CHARACTER.
DEFINE RETURN PARAMETER intRC AS LONG.
END PROCEDURE.

Progress Software Technical Support Note # 17391