Share via


GetUserNameExA 함수(secext.h)

호출 스레드와 연결된 사용자 또는 기타 보안 주체의 이름을 검색합니다. 반환된 이름의 형식을 지정할 수 있습니다.

스레드가 클라이언트를 가장하는 경우 GetUserNameEx 는 클라이언트 이름을 반환합니다.

구문

BOOLEAN SEC_ENTRY GetUserNameExA(
  [in]      EXTENDED_NAME_FORMAT NameFormat,
  [out]     LPSTR                lpNameBuffer,
  [in, out] PULONG               nSize
);

매개 변수

[in] NameFormat

이름의 형식입니다. 이 매개 변수는 EXTENDED_NAME_FORMAT 열거형 형식의 값입니다. NameUnknown일 수 없습니다. 사용자 계정이 도메인에 없는 경우 NameSamCompatible 만 지원됩니다.

[out] lpNameBuffer

지정된 형식으로 이름을 수신하는 버퍼에 대한 포인터입니다. 버퍼는 종료 null 문자에 대한 공간을 포함해야 합니다.

[in, out] nSize

입력 시 이 변수는 TCHAR에서 lpNameBuffer 버퍼의 크기를 지정합니다. 함수가 성공하면 변수는 종료 null 문자를 포함하지 않고 버퍼에 복사된 TCHAR 수를 받습니다.

lpNameBuffer가 너무 작으면 함수가 실패하고 GetLastError가 ERROR_MORE_DATA 반환합니다. 이 매개 변수는 종료 null 문자를 포함하여 유니코드 문자(유니코드 사용 여부)로 필요한 버퍼 크기를 받습니다.

반환 값

함수가 성공하면 반환 값은 0이 아닌 값입니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다. 가능한 값은 다음과 같습니다.

반환 코드 설명
ERROR_MORE_DATA
lpNameBuffer 버퍼가 너무 작습니다. lpnSize 매개 변수에는 이름을 받는 데 필요한 바이트 수가 포함됩니다.
ERROR_NO_SUCH_DOMAIN
도메인 컨트롤러는 조회를 수행할 수 없습니다.
ERROR_NONE_MAPPED
사용자 이름은 지정된 형식으로 사용할 수 없습니다.

설명

참고

secext.h 헤더는 GETUserNameEx를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

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

추가 정보

EXTENDED_NAME_FORMAT

LookupAccountName

시스템 정보 함수