WNetOpenEnumA 함수(winnetwk.h)
WNetOpenEnum 함수는 네트워크 리소스 또는 기존 연결의 열거를 시작합니다. WNetEnumResource 함수를 호출하여 열거형을 계속할 수 있습니다.
구문
DWORD WNetOpenEnumA(
[in] DWORD dwScope,
[in] DWORD dwType,
[in] DWORD dwUsage,
[in] LPNETRESOURCEA lpNetResource,
[out] LPHANDLE lphEnum
);
매개 변수
[in] dwScope
열거형의 범위입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.
[in] dwType
열거할 리소스 종류입니다. 이 매개 변수는 다음 값의 조합일 수 있습니다.
값 | 의미 |
---|---|
|
모든 리소스 이 값은 RESOURCETYPE_DISK 또는 RESOURCETYPE_PRINT 결합할 수 없습니다. |
|
모든 디스크 리소스. |
|
모든 인쇄 리소스. |
네트워크 공급자가 인쇄 리소스와 디스크 리소스를 구분할 수 없는 경우 모든 리소스를 열거할 수 있습니다.
[in] dwUsage
열거할 리소스 사용 유형입니다. 이 매개 변수는 다음 값의 조합일 수 있습니다.
dwScope 매개 변수가 RESOURCE_GLOBALNET 같지 않으면 이 매개 변수는 무시됩니다. 자세한 내용은 아래 설명 부분을 참조하십시오.
[in] lpNetResource
열거할 컨테이너를 지정하는 NETRESOURCE 구조체에 대한 포인터입니다. dwScope 매개 변수가 RESOURCE_GLOBALNET 않으면 이 매개 변수는 NULL이어야 합니다.
이 매개 변수가 NULL이면 네트워크의 루트가 가정됩니다. (시스템은 네트워크를 계층 구조로 구성합니다. 루트는 네트워크에서 가장 맨 위 컨테이너입니다.)
이 매개 변수가 NULL이 아닌 경우 NETRESOURCE 구조를 가리킵니다. 이 구조체는 애플리케이션에 의해 채워지거나 WNetEnumResource 함수를 호출하여 반환할 수 있습니다. NETRESOURCE 구조는 컨테이너 리소스를 지정해야 합니다. 즉, dwUsage 매개 변수에 RESOURCEUSAGE_CONTAINER 값을 지정해야 합니다.
모든 네트워크 리소스를 열거하기 위해 애플리케이션은 lpNetResource 매개 변수가 NULL로 설정된 WNetOpenEnum을 호출한 다음 반환된 핸들을 사용하여 WNetEnumResource를 호출하여 리소스를 열거하여 열거를 시작할 수 있습니다. WNetEnumResource 함수에서 반환된 NETRESOURCE 배열의 리소스 중 하나가 컨테이너 리소스인 경우 WNetOpenEnum을 호출하여 추가 열거를 위해 리소스를 열 수 있습니다.
[out] lphEnum
WNetEnumResource에 대한 후속 호출에 사용할 수 있는 열거형 핸들에 대한 포인터입니다.
반환 값
함수가 성공하면 반환 값이 NO_ERROR.
함수가 실패하면 반환 값은 다음 값 중 하나와 같은 시스템 오류 코드입니다.
반환 코드 | 설명 |
---|---|
|
lpNetResource 매개 변수는 컨테이너를 가리키지 않습니다. |
|
dwScope 또는 dwType 매개 변수가 잘못되었거나 매개 변수의 조합이 잘못되었습니다. |
|
네트워크를 사용할 수 없습니다. |
|
네트워크 관련 오류가 발생했습니다. 오류에 대한 설명을 가져오려면 WNetGetLastError 함수를 호출합니다. |
|
NETRESOURCE 구조에 제공된 원격 네트워크 리소스 이름이 잘못된 네트워크 주소로 확인되었습니다. |
설명
dwScope 매개 변수가 RESOURCE_CONNECTED 동일한 경우 WNetOpenEnum 함수를 호출하는 애플리케이션과 다른 로그온 세션에서 실행되는 애플리케이션에 의해 연결이 수행된 경우 Microsoft LAN Manager 네트워크를 사용하여 만든 네트워크 연결이 열거형에서 생략됩니다. Microsoft LAN Manager를 사용하여 만든 연결은 연결을 만든 애플리케이션과 동일한 로그온 세션에서 실행되는 애플리케이션에만 표시되기 때문입니다. (연결을 열거형에 포함하려면 연결을 만든 사용자 계정에서 애플리케이션을 실행하는 것으로 충분하지 않습니다.)
dwScope 매개 변수의 RESOURCE_CONTEXT 정확한 해석은 컴퓨터에 설치된 네트워크에 따라 달라집니다.
WNetOpenEnum 함수는 단일 컨테이너에서 리소스 열거를 시작하는 데 사용됩니다. 다음 예제에서는 Microsoft LAN 관리자 네트워크 및 Novell NetWare 네트워크의 계층 구조를 보여 줍니다.
LanMan (container, in this case the provider)
ACCOUNTING (container, in this case the domain)
\\ACCTSPAY (container, in this case the server)
PAYFILES (disk)
LASERJET (print)
NetWare (container, in this case the provider)
MARKETING (container, in this case the server)
SYS (disk, first one on any NetWare server)
ANOTHERVOLUME (disk)
LASERJET (print)
예제
네트워크의 모든 리소스를 열거하는 애플리케이션 정의 함수를 보여 주는 코드 샘플은 네트워크 리소스 열거를 참조하세요.
참고
winnetwk.h 헤더는 WNetOpenEnum을 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | winnetwk.h |
라이브러리 | Mpr.lib |
DLL | Mpr.dll |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기