다음을 통해 공유


NetFileEnum 함수(lmshare.h)

지정된 매개 변수에 따라 서버의 열려 있는 파일 중 일부 또는 모두에 대한 정보를 반환합니다.

구문

NET_API_STATUS NET_API_FUNCTION NetFileEnum(
  [in]      LMSTR      servername,
  [in]      LMSTR      basepath,
  [in]      LMSTR      username,
  [in]      DWORD      level,
  [out]     LPBYTE     *bufptr,
  [in]      DWORD      prefmaxlen,
  [out]     LPDWORD    entriesread,
  [out]     LPDWORD    totalentries,
  [in, out] PDWORD_PTR resume_handle
);

매개 변수

[in] servername

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

_WIN32_WINNT 또는 FORCE_UNICODE 정의된 경우 이 문자열은 유니코드입니다.

[in] basepath

반환된 정보에 대한 한정자를 지정하는 문자열에 대한 포인터입니다. 이 매개 변수가 NULL이면 열려 있는 모든 리소스가 열거됩니다. 이 매개 변수가 NULL이 아닌 경우 함수는 basepath 매개 변수 값이 접두사인 리소스만 열거합니다. 접두사는 백슬래시 앞에 오는 경로의 부분입니다.

_WIN32_WINNT 또는 FORCE_UNICODE 정의된 경우 이 문자열은 유니코드입니다.

[in] username

사용자 이름 또는 연결 이름을 지정하는 문자열에 대한 포인터입니다. 문자열이 두 개의 백슬라이시("\")로 시작하는 경우 연결 이름(예: "\127.0.0.1" 또는 "\ClientName")을 나타냅니다. 백 슬래시 뒤의 연결 이름 부분은 NetSessionEnum 함수에서 반환된 세션 정보 구조의 클라이언트 이름과 동일합니다. 문자열이 두 개의 백 슬래시로 시작되지 않으면 사용자의 이름을 나타냅니다. 이 매개 변수가 NULL이 아닌 경우 해당 값은 열거형의 한정자로 사용됩니다. 반환된 파일은 한정자와 일치하는 사용자 이름 또는 연결 이름이 있는 파일로 제한됩니다. 이 매개 변수가 NULL이면 사용자 이름 한정자가 사용되지 않습니다.

Windows Server 2008, Windows Vista, Windows Server 2003 및 Windows XP: 이 매개 변수는 사용자의 이름을 지정하는 문자열에 대한 포인터입니다. 이 매개 변수가 NULL이 아닌 경우 해당 값은 열거형의 한정자로 사용됩니다. 반환된 파일은 한정자와 일치하는 사용자 이름이 있는 파일로 제한됩니다. 이 매개 변수가 NULL이면 사용자 이름 한정자가 사용되지 않습니다.

_WIN32_WINNT 또는 FORCE_UNICODE 정의된 경우 이 문자열은 유니코드입니다.

[in] level

데이터의 정보 수준을 지정합니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

의미
2
파일 ID 번호를 반환합니다. bufptr 매개 변수는 FILE_INFO_2 구조체의 배열을 가리킵니다.
3
파일에 대한 정보를 반환합니다. bufptr 매개 변수는 FILE_INFO_3 구조체의 배열을 가리킵니다.

[out] bufptr

정보를 수신하는 버퍼의 주소에 대한 포인터입니다. 이 데이터의 형식은 수준 매개 변수의 값에 따라 달라집니다.

이 버퍼는 시스템에서 할당되며 NetApiBufferFree 함수를 사용하여 해제해야 합니다. 함수가 ERROR_MORE_DATA 실패하더라도 버퍼를 해제해야 합니다.

[in] prefmaxlen

반환된 데이터의 기본 최대 길이(바이트)를 지정합니다. MAX_PREFERRED_LENGTH 지정하는 경우 함수는 데이터에 필요한 메모리 양을 할당합니다. 이 매개 변수에 다른 값을 지정하면 함수가 반환하는 바이트 수를 제한할 수 있습니다. 버퍼 크기가 모든 항목을 보유하기에 충분하지 않은 경우 함수는 ERROR_MORE_DATA 반환합니다. 자세한 내용은 네트워크 관리 함수 버퍼 및 네트워크관리 함수 버퍼 길이를 참조하세요.

[out] entriesread

실제로 열거된 요소 수를 받는 값에 대한 포인터입니다.

[out] totalentries

현재 다시 시작 위치에서 열거될 수 있는 총 항목 수를 수신하는 값에 대한 포인터입니다. 애플리케이션은 이 값을 힌트로만 고려해야 합니다.

[in, out] resume_handle

기존 파일 검색을 계속하는 데 사용되는 다시 시작 핸들이 포함된 값에 대한 포인터입니다. 핸들은 첫 번째 호출에서 0이어야 하며 후속 호출의 경우 변경되지 않은 상태로 유지되어야 합니다. 이 매개 변수가 NULL이면 다시 시작 핸들이 저장되지 않습니다.

반환 값

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

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

반환 코드 설명
ERROR_ACCESS_DENIED
사용자는 요청한 정보에 대한 액세스 권한이 없습니다.
ERROR_INVALID_LEVEL
level 매개 변수에 대해 지정된 값이 잘못되었습니다.
ERROR_MORE_DATA
더 많은 항목을 사용할 수 있습니다. 모든 항목을 받을 수 있을 만큼 큰 버퍼를 지정합니다.
ERROR_NOT_ENOUGH_MEMORY
사용 가능한 메모리가 부족합니다.
NERR_BufTooSmall
제공된 버퍼가 너무 작습니다.

설명

관리자 또는 서버 연산자 로컬 그룹의 멤버만 NetFileEnum 함수를 성공적으로 실행할 수 있습니다.

NetFileGetInfo 함수를 호출하여 서버 리소스의 특정 열기에 대한 정보를 검색할 수 있습니다.

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 lmshare.h(Lm.h 포함)
라이브러리 Netapi32.lib
DLL Netapi32.dll

추가 정보

FILE_INFO_2

FILE_INFO_3

NetFile 함수

NetFileGetInfo

네트워크 관리 함수

네트워크 관리 개요