NetUserDel 함수(lmaccess.h)

NetUserDel 함수는 서버에서 사용자 계정을 삭제합니다.

구문

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

매개 변수

[in] servername

함수를 실행할 원격 서버의 DNS 또는 NetBIOS 이름을 지정하는 상수 문자열에 대한 포인터입니다. 이 매개 변수가 NULL이면 로컬 컴퓨터가 사용됩니다.

[in] username

삭제할 사용자 계정의 이름을 지정하는 상수 문자열에 대한 포인터입니다. 자세한 내용은 아래 설명 부분을 참조하십시오.

반환 값

함수가 성공하면 반환 값이 NERR_Success.

함수가 실패하면 반환 값은 다음 오류 코드 중 하나일 수 있습니다.

반환 코드 설명
ERROR_ACCESS_DENIED
사용자는 요청한 정보에 대한 액세스 권한이 없습니다.
NERR_InvalidComputer
컴퓨터 이름이 잘못된 경우
NERR_NotPrimary
작업은 도메인의 주 도메인 컨트롤러에서만 허용됩니다.
NERR_UserNotFound
사용자 이름을 찾을 수 없습니다.

설명

Active Directory를 프로그래밍하는 경우 특정 ADSI(Active Directory Service Interface) 메서드를 호출하여 네트워크 관리 사용자 함수를 호출하여 달성할 수 있는 동일한 기능을 달성할 수 있습니다. 자세한 내용은 IADsUserIADsComputer를 참조하세요.

Active Directory를 실행하는 도메인 컨트롤러에서 이 함수를 호출하는 경우 보안 개체에 대한 ACL(액세스 제어 목록)에 따라 액세스가 허용되거나 거부됩니다. 기본 ACL은 도메인 관리자 및 계정 운영자만 이 함수를 호출할 수 있도록 허용합니다. 구성원 서버 또는 워크스테이션에서 관리자 및 전원 사용자만 이 함수를 호출할 수 있습니다. 자세한 내용은 네트워크 관리 함수에 대한 보안 요구 사항을 참조하세요. ACL, ACL 및 액세스 토큰에 대한 자세한 내용은 Access Control 모델을 참조하세요.

User 개체의 보안 설명자는 이 함수에 대한 액세스 검사 수행하는 데 사용됩니다.

사용자 또는 애플리케이션이 서버 리소스에 액세스하는 동안에는 계정을 삭제할 수 없습니다. 사용자가 NetUserAdd 함수를 호출하여 시스템에 추가된 경우 사용자를 삭제하면 사용자의 시스템 계정도 삭제됩니다.

사용자 계정 이름은 20자로 제한되고 그룹 이름은 256자로 제한됩니다. 또한 계정 이름은 마침표로 종료할 수 없으며 쉼표 또는 인쇄 가능한 문자 중 일부를 포함할 수 없습니다. ", /, , [, ], :, |, <, , >+, =, ;, ?, *. 이름에는 인쇄할 수 없는 1-31 범위의 문자도 포함될 수 없습니다.

예제

다음 코드 샘플에서는 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;
}

요구 사항

   
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 lmaccess.h(Lm.h 포함)
라이브러리 Netapi32.lib
DLL Netapi32.dll

참고 항목

NetUserAdd

NetUserEnum

NetUserSetInfo

네트워크 관리 함수

네트워크 관리 개요

사용자 함수