GetSystemDirectoryA, fonction (sysinfoapi.h)
Récupère le chemin d’accès du répertoire système. Le répertoire système contient des fichiers système tels que des bibliothèques et des pilotes de liaison dynamique.
Cette fonction est fournie principalement pour la compatibilité. Les applications doivent stocker du code dans le dossier Program Files et des données persistantes dans le dossier Données d’application dans le profil de l’utilisateur. Pour plus d’informations, consultez ShGetFolderPath.
Syntaxe
UINT GetSystemDirectoryA(
[out] LPSTR lpBuffer,
[in] UINT uSize
);
Paramètres
[out] lpBuffer
Pointeur vers la mémoire tampon pour recevoir le chemin d’accès. Ce chemin ne se termine pas par une barre oblique inverse, sauf si le répertoire système est le répertoire racine. Par exemple, si le répertoire système est nommé Windows\System32 sur le lecteur C, le chemin d’accès du répertoire système récupéré par cette fonction est C :\Windows\System32.
[in] uSize
Taille maximale de la mémoire tampon, en TCHAR.
Valeur retournée
Si la fonction réussit, la valeur de retour est la longueur, en TCHAR, de la chaîne copiée dans la mémoire tampon, sans inclure le caractère null de fin. Si la longueur est supérieure à la taille de la mémoire tampon, la valeur de retour est la taille de la mémoire tampon requise pour contenir le chemin d’accès, y compris le caractère null de fin.
Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
Les applications ne doivent pas créer de fichiers dans le répertoire système. Si l’utilisateur exécute une version partagée du système d’exploitation, l’application n’a pas d’accès en écriture au répertoire système.
Exemples
Pour obtenir un exemple, consultez Obtention d’informations système.
Notes
L’en-tête sysinfoapi.h définit GetSystemDirectory comme un 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. Le mélange 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 2000 Professionnel [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | sysinfoapi.h (inclure Windows.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |