Compartir a través de


Función GetTempPathW (fileapi.h)

Recupera la ruta de acceso del directorio designado para los archivos temporales.

Sintaxis

DWORD GetTempPathW(
  [in]  DWORD  nBufferLength,
  [out] LPWSTR lpBuffer
);

Parámetros

[in] nBufferLength

Tamaño del búfer de cadena identificado por lpBuffer, en TCHAR.

[out] lpBuffer

Puntero a un búfer de cadena que recibe la cadena terminada en null que especifica la ruta de acceso del archivo temporal. La cadena devuelta termina con una barra diagonal inversa, por ejemplo, "C:\TEMP\".

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es la longitud, en TCHAR, de la cadena copiada en lpBuffer, sin incluir el carácter nulo de terminación. Si el valor devuelto es mayor que nBufferLength, el valor devuelto es la longitud, en TCHAR, del búfer necesario para contener la ruta de acceso.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

El valor devuelto máximo posible es MAX_PATH+1 (261).

Comentarios

Nota

Las aplicaciones deben llamar a GetTempPath2 en lugar de GetTempPath.

La función GetTempPath comprueba la existencia de variables de entorno en el orden siguiente y usa la primera ruta de acceso encontrada:

  1. Ruta de acceso especificada por la variable de entorno TMP.
  2. Ruta de acceso especificada por la variable de entorno TEMP.
  3. Ruta de acceso especificada por la variable de entorno USERPROFILE.
  4. El directorio de Windows.
Tenga en cuenta que la función no comprueba que la ruta de acceso existe ni prueba para ver si el proceso actual tiene algún tipo de derechos de acceso a la ruta de acceso. La función GetTempPath devuelve la cadena con formato correcto que especifica la ruta de acceso completa basada en el orden de búsqueda de la variable de entorno tal como se especificó anteriormente. La aplicación debe comprobar la existencia de la ruta de acceso y los derechos de acceso adecuados a la ruta de acceso antes de cualquier uso de las operaciones de E/S de archivos.

Comportamiento simbólico del vínculo: si la ruta de acceso apunta a un vínculo simbólico, el nombre de la ruta de acceso temporal mantiene los vínculos simbólicos.

En Windows 8 y Windows Server 2012, esta función es compatible con las tecnologías siguientes.

Tecnología Compatible
Protocolo Bloque de mensajes del servidor (SMB) 3.0
Conmutación por error transparente (TFO) de SMB 3.0
SMB 3.0 con recursos compartidos de archivos de escalabilidad horizontal (SO)
Sistema de archivos de Volumen compartido de clúster (CsvFS)
Sistema de archivos resistente a errores (ReFS)
 

Ejemplos

Para obtener un ejemplo, vea Crear y usar un archivo temporal.

Nota

El encabezado fileapi.h define GetTempPath como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado fileapi.h (incluya Windows.h)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

Funciones de administración de archivos

GetTempFileName

Vínculos simbólicos