NetUserDel, fonction (lmaccess.h)

La fonction NetUserDel supprime un compte d’utilisateur d’un serveur.

Syntaxe

NET_API_STATUS NET_API_FUNCTION NetUserDel(
  [in] LPCWSTR servername,
  [in] LPCWSTR username
);

Paramètres

[in] servername

Pointeur vers une chaîne constante 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é.

[in] username

Pointeur vers une chaîne constante qui spécifie le nom du compte d’utilisateur à supprimer. Pour plus d'informations, consultez la section Notes qui suit.

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
ERROR_ACCESS_DENIED
L’utilisateur n’a pas accès aux informations demandées.
NERR_InvalidComputer
Le nom d'ordinateur est non valide.
NERR_NotPrimary
L’opération est autorisée uniquement sur le contrôleur de domaine principal du domaine.
NERR_UserNotFound
Le nom d’utilisateur est introuvable.

Notes

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 utilisateur de gestion réseau. Pour plus d’informations, consultez IADsUser et IADsComputer.

Si vous appelez cette fonction sur un contrôleur de domaine qui exécute Active Directory, l’accès est autorisé ou refusé en fonction de la liste de contrôle d’accès (ACL) pour l’objet sécurisable. La liste de contrôle d’accès par défaut autorise uniquement les administrateurs de domaine et les opérateurs de compte à appeler cette fonction. Sur un serveur ou une station de travail membre, seuls les administrateurs et les utilisateurs avec pouvoir peuvent appeler cette fonction. Pour plus d’informations, consultez Exigences de sécurité pour les fonctions de gestion réseau. Pour plus d’informations sur les ACL, les ACL et les jetons d’accès, consultez modèle Access Control.

Le descripteur de sécurité de l’objet User est utilisé pour effectuer la case activée d’accès pour cette fonction.

Impossible de supprimer un compte lorsqu’un utilisateur ou une application accède à une ressource serveur. Si l’utilisateur a été ajouté au système avec un appel à la fonction NetUserAdd , la suppression de l’utilisateur supprime également le compte système de l’utilisateur.

Les noms de compte d’utilisateur sont limités à 20 caractères et les noms de groupe à 256 caractères. En outre, les noms de comptes ne peuvent pas être arrêtés par un point et ils ne peuvent pas inclure de virgules ou d’un des caractères imprimables suivants : « , /, , , [, ], :, |, <, , >+, =, ?, *. Les noms ne peuvent pas non plus inclure de caractères dans la plage 1 à 31, qui ne sont pas imprimables.

Exemples

L’exemple de code suivant montre comment supprimer un compte d’utilisateur avec un appel à la fonction NetUserDel .

#ifndef UNICODE
#define UNICODE
#endif
#pragma comment(lib, "netapi32.lib")

#include <stdio.h>
#include <windows.h> 
#include <lm.h>

int wmain(int argc, wchar_t *argv[])
{
   DWORD dwError = 0;
   NET_API_STATUS nStatus;
   //
   // All parameters are required.
   //
   if (argc != 3)
   {
      fwprintf(stderr, L"Usage: %s \\\\ServerName UserName\n", argv[0]);
      exit(1);
   }
   //
   // Call the NetUserDel function to delete the share.
   //
   nStatus = NetUserDel(argv[1], argv[2]);
   //
   // Display the result of the call.
   //
   if (nStatus == NERR_Success)
      fwprintf(stderr, L"User %s has been successfully deleted on %s\n",
               argv[2], argv[1]);
   else
      fprintf(stderr, "A system error has occurred: %d\n", nStatus);

   return 0;
}

Spécifications

   
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 lmaccess.h (include Lm.h)
Bibliothèque Netapi32.lib
DLL Netapi32.dll

Voir aussi

NetUserAdd

NetUserEnum

NetUserSetInfo

Fonctions de gestion réseau

Vue d’ensemble de la gestion du réseau

Fonctions utilisateur