Función NetUserDel (lmaccess.h)
La función NetUserDel elimina una cuenta de usuario de un servidor.
Sintaxis
NET_API_STATUS NET_API_FUNCTION NetUserDel(
[in] LPCWSTR servername,
[in] LPCWSTR username
);
Parámetros
[in] servername
Puntero a una cadena constante que especifica el nombre DNS o NetBIOS del servidor remoto en el que se va a ejecutar la función. Si este parámetro es NULL, se usa el equipo local.
[in] username
Puntero a una cadena constante que especifica el nombre de la cuenta de usuario que se va a eliminar. Para obtener más información, vea la sección Comentarios que se muestra más adelante.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es NERR_Success.
Si se produce un error en la función, el valor devuelto puede ser uno de los siguientes códigos de error.
Código devuelto | Descripción |
---|---|
|
El usuario no tiene acceso a la información pedida. |
|
El nombre de equipo no es válido. |
|
La operación solo se permite en el controlador de dominio principal del dominio. |
|
No se encontró el nombre de usuario. |
Comentarios
Si está programando para Active Directory, puede llamar a determinados métodos de interfaz de servicio de Active Directory (ADSI) para lograr la misma funcionalidad que puede lograr llamando a las funciones de usuario de administración de red. Para obtener más información, consulte IADsUser e IADsComputer.
Si llama a esta función en un controlador de dominio que ejecuta Active Directory, se permite o se deniega el acceso en función de la lista de control de acceso (ACL) para el objeto protegible. La ACL predeterminada solo permite que los administradores de dominio y los operadores de cuenta llamen a esta función. En un servidor miembro o estación de trabajo, solo los administradores y los usuarios avanzados pueden llamar a esta función. Para obtener más información, consulte Requisitos de seguridad para las funciones de administración de red. Para obtener más información sobre las ACL, los ACL y los tokens de acceso, consulte Access Control Modelo.
El descriptor de seguridad del objeto User se usa para realizar la comprobación de acceso de esta función.
No se puede eliminar una cuenta mientras un usuario o una aplicación acceden a un recurso de servidor. Si el usuario se agregó al sistema con una llamada a la función NetUserAdd , al eliminar el usuario también se elimina la cuenta del sistema del usuario.
Los nombres de cuenta de usuario están limitados a 20 caracteres y los nombres de grupo están limitados a 256 caracteres. Además, los nombres de cuenta no se pueden terminar por un punto y no pueden incluir comas ni ninguno de los siguientes caracteres imprimibles: ", /, , [, ], :, |, <, , >+, =, ;, ?, *. Los nombres tampoco pueden incluir caracteres en el intervalo 1-31, que no son imprimibles.
Ejemplos
En el ejemplo de código siguiente se muestra cómo eliminar una cuenta de usuario con una llamada a la función 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;
}
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | lmaccess.h (include Lm.h) |
Library | Netapi32.lib |
Archivo DLL | Netapi32.dll |
Consulte también
Funciones de administración de redes