NetShareDel, fonction (lmshare.h)
Supprime un nom de partage de la liste des ressources partagées d’un serveur, ce qui déconnecte toutes les connexions à la ressource partagée.
La fonction étendue NetShareDelEx permet à l’appelant de spécifier une structure SHARE_INFO_0, SHARE_INFO_1, SHARE_INFO_2, SHARE_INFO_502 ou SHARE_INFO_503 .
Syntaxe
NET_API_STATUS NET_API_FUNCTION NetShareDel(
[in] LMSTR servername,
[in] LMSTR netname,
DWORD reserved
);
Paramètres
[in] servername
Pointeur vers une chaîne qui spécifie le nom DNS ou NetBIOS du serveur distant sur lequel la fonction doit s’exécuter. Si ce paramètre a la valeur NULL, l’ordinateur local est utilisé.
Cette chaîne est Unicode si _WIN32_WINNT ou FORCE_UNICODE est défini.
[in] netname
Pointeur vers une chaîne qui spécifie le nom du partage à supprimer.
Cette chaîne est Unicode si _WIN32_WINNT ou FORCE_UNICODE est défini.
reserved
Réservé, doit être égal à zéro.
Valeur retournée
Si la fonction réussit, la valeur de retour est NERR_Success.
Si la fonction échoue, la valeur de retour peut être l’un des codes d’erreur suivants.
Code de retour | Description |
---|---|
|
L’utilisateur n’a pas accès aux informations demandées. |
|
Le paramètre spécifié n’est pas valide. |
|
La mémoire disponible est insuffisante. |
|
Le nom du partage n’existe pas. |
Notes
Cette fonction s’applique uniquement aux partages SMB (Server Message Block). Pour d’autres types de partages, tels que le système de fichiers distribué (DFS) ou les partages WebDAV, utilisez les fonctions de mise en réseau Windows (WNet), qui prennent en charge tous les types de partages.
Seuls les membres du groupe local Administrateurs, Opérateurs de serveur ou Utilisateurs avec pouvoir, ou ceux ayant une appartenance au groupe Opérateur de serveur, peuvent supprimer des partages de fichiers avec un appel à la fonction NetShareDel . L’opérateur d’impression peut supprimer des partages d’imprimantes.
Si vous programmez pour Active Directory, vous pouvez peut-être appeler certaines méthodes ADSI (Active Directory Service Interface) pour obtenir les mêmes fonctionnalités que celles que vous pouvez obtenir en appelant les fonctions de partage de gestion réseau. Pour plus d’informations, consultez IADsFileShare.
Exemples
L’exemple de code suivant montre comment supprimer un partage à l’aide d’un appel à la fonction NetShareDel .
#ifndef UNICODE
#define UNICODE
#endif
#include <windows.h>
#include <stdio.h>
#include <lm.h>
#pragma comment(lib, "Netapi32.lib")
void wmain( int argc, TCHAR *argv[ ])
{
NET_API_STATUS res;
if(argc<3)
printf("Usage: NetShareDel server share\n");
else
{
//
// Call the NetShareDel function to delete the share.
//
res=NetShareDel(argv[1], argv[2], 0);
//
// Display the result of the call.
//
if(res==0)
printf("Share Removed.\n");
else
printf("Error: %u\n", res);
}
return;
}
Spécifications
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | lmshare.h (include Lm.h) |
Bibliothèque | Netapi32.lib |
DLL | Netapi32.dll |