GetTempPath2W, fonction (fileapi.h)

Récupère le chemin d’accès du répertoire désigné pour les fichiers temporaires, en fonction des privilèges du processus appelant.

Syntaxe

DWORD GetTempPath2W(
  [in]  DWORD  BufferLength,
  [out] LPWSTR Buffer
);

Paramètres

[in] BufferLength

Taille de la mémoire tampon de chaîne identifiée par lpBuffer, en TCHAR.

[out] Buffer

Pointeur vers une mémoire tampon de chaîne qui reçoit la chaîne terminée par null spécifiant le chemin du fichier temporaire. La chaîne retournée se termine par une barre oblique inverse, par exemple , « C :\TEMP\ ».

Valeur retournée

Si la fonction réussit, la valeur de retour est la longueur, en TCHAR, de la chaîne copiée dans lpBuffer, sans inclure le caractère null de fin. Si la valeur de retour est supérieure à nBufferLength, la valeur de retour est la longueur, en TCHAR, de la mémoire tampon requise pour contenir le chemin.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

La valeur de retour maximale possible est MAX_PATH+1 (261).

Remarques

Lors de l’appel de cette fonction à partir d’un processus exécuté en tant que SYSTÈME, elle retourne le chemin C :\Windows\SystemTemp, qui est inaccessible aux processus non-SYSTEM. Pour les processus non-SYSTEM, GetTempPath2 se comporte de la même façon que GetTempPath.

La fonction GetTempPath2 vérifie l’existence de variables d’environnement dans l’ordre suivant et utilise le premier chemin trouvé :

  1. Chemin spécifié par la variable d’environnement TMP.
  2. Chemin spécifié par la variable d’environnement TEMP.
  3. Chemin spécifié par la variable d’environnement USERPROFILE.
  4. Répertoire Windows.
Notez que la fonction ne vérifie pas que le chemin existe et ne teste pas non plus si le processus actuel dispose de droits d’accès au chemin. La fonction GetTempPath2 retourne la chaîne correctement mise en forme qui spécifie le chemin d’accès complet en fonction de l’ordre de recherche des variables d’environnement spécifié précédemment. L’application doit vérifier l’existence du chemin d’accès et les droits d’accès adéquats au chemin avant toute utilisation pour les opérations d’E/S de fichier.

Comportement des liens symboliques : si le chemin pointe vers un lien symbolique, le nom du chemin d’accès temporaire conserve les liens symboliques.

Dans Windows 8 et Windows Server 2012, cette fonction est prise en charge par les technologies suivantes.

Technologie Prise en charge
Protocole Server Message Block (SMB) 3.0 Oui
Basculement transparent SMB 3.0 (TFO) Oui
SMB 3.0 avec partages de fichiers avec montée en puissance parallèle (SO) Oui
Système de fichiers du volume partagé de cluster (CsvFS) Oui
Système de fichiers résilient (ReFS) Oui
 

Exemples

Pour obtenir un exemple, consultez Création et utilisation d’un fichier temporaire.

Notes

L’en-tête fileapi.h définit GetTempPath2 comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 Build 20348
Serveur minimal pris en charge Windows Server Build 20348
En-tête fileapi.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

Fonctions de gestion des fichiers

GetTempFileName

Liens symboliques