Partager via


SHCreateDirectoryExA, fonction (shlobj_core.h)

[Cette fonction est disponible via Windows XP Service Pack 2 (SP2) et Windows Server 2003. Il peut être modifié ou indisponible dans les versions ultérieures de Windows.]

Crée un dossier de système de fichiers avec des attributs de sécurité facultatifs.

Syntaxe

int SHCreateDirectoryExA(
  [in, optional] HWND                      hwnd,
  [in]           LPCSTR                    pszPath,
  [in, optional] const SECURITY_ATTRIBUTES *psa
);

Paramètres

[in, optional] hwnd

Type : HWND

Handle vers une fenêtre parente. Ce paramètre peut être défini sur NULL si aucune interface utilisateur n’est affichée.

[in] pszPath

Type : LPCTSTR

Pointeur vers une chaîne terminée par null spécifiant le chemin complet du répertoire. Cette chaîne est de longueur maximale de 248 caractères, y compris le caractère null de fin.

[in, optional] psa

Type : const SECURITY_ATTRIBUTES*

Pointeur vers une structure SECURITY_ATTRIBUTES avec l’attribut de sécurité du répertoire. Définissez ce paramètre sur NULL si aucun attribut de sécurité n’a besoin d’être défini.

Valeur de retour

Type : int

Retourne ERROR_SUCCESS en cas de réussite. Si l’opération échoue, d’autres codes d’erreur peuvent être retournés, y compris ceux répertoriés ici. Pour les valeurs non spécifiquement répertoriées, consultez Codes d’erreur système.

Retourner le code Description
ERROR_BAD_PATHNAME
Le paramètre pszPath a été défini sur un chemin relatif.
ERROR_FILENAME_EXCED_RANGE
Le chemin vers lequel pointe pszPath est trop long.
ERROR_PATH_NOT_FOUND
Le système ne peut pas trouver le chemin vers lequel pointe pszPath. Le chemin d’accès peut contenir une entrée non valide.
ERROR_FILE_EXISTS
Le répertoire existe.
ERROR_ALREADY_EXISTS
Le répertoire existe.
ERROR_CANCELLED
L’utilisateur a annulé l’opération.

Remarques

Cette fonction crée un dossier de système de fichiers dont le chemin complet est donné par pszPath. Si un ou plusieurs dossiers intermédiaires n’existent pas, ils sont également créés. SHCreateDirectoryEx vérifie également que les fichiers sont visibles. S’ils ne sont pas visibles, attendez-vous à l’une des options suivantes :

  • Si hwnd est défini sur un handle de fenêtre valide, une boîte de message s’affiche pour avertir l’utilisateur qu’il ou elle ne peut pas accéder aux fichiers. Si l’utilisateur choisit de ne pas continuer, la fonction retourne ERROR_CANCELLED.
  • Si hwnd est défini sur NULL, aucune interface utilisateur n’est affichée et la fonction retourne ERROR_CANCELLED.

Note

L’en-tête shlobj_core.h définit SHCreateDirectoryEx 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. 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.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel, Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête shlobj_core.h (include Shlobj.h, Shlobj_core.h)
bibliothèque Shell32.lib
DLL Shell32.dll (version 5.0 ou ultérieure)

Voir aussi

SHCreateDirectory