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) |