Partager via


ShPathPrepareForWriteA, fonction (shlobj_core.h)

Vérifie si le chemin existe. Cela inclut le remontage des lecteurs réseau mappés, l’invite à réinsérer le média éjectable, la création des chemins, l’invite de formatage du média et la fourniture des interfaces utilisateur appropriées, si nécessaire. Les autorisations en lecture/écriture pour le support ne sont pas vérifiées.

Syntaxe

SHSTDAPI SHPathPrepareForWriteA(
  [in, optional] HWND     hwnd,
  [in, optional] IUnknown *punkEnableModless,
  [in]           LPCSTR   pszPath,
                 DWORD    dwFlags
);

Paramètres

[in, optional] hwnd

Type : HWND

Handle d’une fenêtre qui spécifie la fenêtre parente à utiliser pour toutes les fenêtres d’interface utilisateur qui doivent être créées. Si la valeur est NULL, les fenêtres d’interface utilisateur ne sont pas créées.

[in, optional] punkEnableModless

Type : IUnknown*

Pointeur vers une interface IUnknown qui spécifie l’objet IOleInPlaceActiveObject qui implémente la méthode EnableModeless .

[in] pszPath

Type : LPCTSTR

Pointeur vers une chaîne terminée par un caractère Null de longueur maximale MAX_PATH qui spécifie le chemin d’accès à vérifier comme valide pour l’écriture. Il peut s’agir d’un chemin d’accès UNC ou de lecteur de fichier.

dwFlags

Type : DWORD

Indicateurs qui déterminent les options de comportement. Ce paramètre peut être une combinaison des valeurs suivantes.

SHPPFW_NONE

Ne créez pas de répertoires.

SHPPFW_DEFAULT

Par défaut. Ne demandez pas à l’utilisateur si un répertoire doit être créé. Ceci est identique à SHPPFW_DIRCREATE. Ne passez pas avec SHPPFW_ASKDIRCREATE.

SHPPFW_DIRCREATE

Créez des répertoires sans inviter l’utilisateur. Ne passez pas avec SHPPFW_ASKDIRCREATE.

SHPPFW_ASKDIRCREATE

Invitez l’utilisateur avant de créer des répertoires. Ne passez pas avec SHPPFW_DIRCREATE.

SHPPFW_IGNOREFILENAME

Le dernier élément de pszPath étant un nom de fichier, ignorez. Par exemple, si pszPath="C:\MyDir\MyFile.doc », utilisez uniquement « C:\MyDir ». Si pszPath="C:\MyFirDir\MySecDir », utilisez uniquement « C:\MyFirDir ».

SHPPFW_NOWRITECHECK

Actuellement non implémenté.

SHPPFW_MEDIACHECKONLY

Windows XP ou version ultérieure. Supprime la boîte de message d’erreur « non accessible », qui s’affiche lorsqu’un échec autre qu’une annulation d’utilisateur se produit et que hwnd n’a pas la valeur NULL.

Valeur retournée

Type : HRESULT

Retourne S_OK si le chemin d’accès est disponible, ou un code d’erreur dans le cas contraire. Notez qu’une valeur de retour de S_OK ne signifie pas que le support est accessible en écriture ; cela signifie simplement que le chemin d’accès est disponible.

Remarques

L’utilisation principale de cette fonction est qu’un programme case activée un chemin d’accès avant de l’utiliser et d’afficher l’interface utilisateur nécessaire pour inviter l’utilisateur. Par exemple, si le disque du lecteur A: était manquant, une fenêtre invitant l’utilisateur à insérer le disque s’affiche.

Notes

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

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête shlobj_core.h (inclure Shlobj.h, Shlobj_core.h)
Bibliothèque Shell32.lib
DLL Shell32.dll (version 5.0 ou ultérieure)