WNetGetResourceInformationA 함수(winnetwk.h)
네트워크 리소스에 대한 원격 경로를 제공하는 경우 WNetGetResourceInformation 함수는 리소스를 소유하는 네트워크 공급자를 식별하고 리소스 유형에 대한 정보를 가져옵니다. 이 함수는 일반적으로 WNetGetResourceParent 함수와 함께 사용하여 사용자가 입력한 네트워크 경로를 구문 분석하고 해석합니다.
통사론
DWORD WNetGetResourceInformationA(
[in] LPNETRESOURCEA lpNetResource,
[out] LPVOID lpBuffer,
[in, out] LPDWORD lpcbBuffer,
[out] LPSTR *lplpSystem
);
매개 변수
[in] lpNetResource
정보가 필요한 네트워크 리소스를 지정하는 NETRESOURCE 구조체에 대한 포인터입니다.
구조체의 lpRemoteName 멤버는 리소스의 원격 경로 이름(일반적으로 사용자가 입력한 이름)을 지정해야 합니다.
lpProvider 및 dwType 멤버도 채워져야 합니다. 특히 dwType 멤버를 지정하지 않는 경우 이 작업은 메모리 집약적일 수 있기 때문입니다. 이러한 멤버의 값을 모르는 경우 NULL
[out] lpBuffer
결과를 받을 버퍼에 대한 포인터입니다. 반환이 성공적이면 버퍼의 첫 번째 부분은 입력 리소스 종류와 관련된 시스템 함수를 통하지 않고 WNet 함수를 통해 액세스되는 입력 리소스 경로의 해당 부분을 나타내는 NETRESOURCE 구조체입니다. (버퍼의 나머지 부분에는 NETRESOURCE의 멤버가 구조 지점을 가변 길이 문자열이 포함됩니다.)
예를 들어 입력 원격 리소스 경로가 \server\share\dir1\dir2인 경우 NETRESOURCE 구조체에
lpRemoteName 멤버는 WNetEnumResource 함수에 의해 열거형에서 반환된 것과 동일한 구문으로 반환됩니다. 이렇게 하면 호출자가 문자열 비교를 수행하여 WNetGetResourceInformation 전달된 리소스가 WNetEnumResource대한 별도의 호출에서 반환된 리소스와 동일한지 여부를 확인할 수 있습니다.
[in, out] lpcbBuffer
항목에서 lpBuffer 버퍼의 크기를 바이트 단위로 지정하는 위치에 대한 포인터입니다. 할당하는 버퍼는 NETRESOURCE 구조체와 해당 멤버가 가리키는 문자열을 포함할 수 있을 만큼 커야 합니다. 버퍼가 결과에 비해 너무 작으면 이 위치는 필요한 버퍼 크기를 받고 함수는 ERROR_MORE_DATA 반환합니다.
[out] lplpSystem
함수가 성공적으로 반환되면 이 매개 변수는 시스템 함수를 통해 액세스되는 리소스 부분을 지정하는 출력 버퍼의 문자열을 가리킵니다. (WNet 함수가 아닌 리소스 종류에 특정한 함수에만 적용됩니다.)
예를 들어 입력 원격 리소스 이름이 \server\share\dir1\dir2이면 출력 NETRESOURCE 구조체의 lpRemoteName 멤버가 \server\share를 가리킵니다. 또한 lplpSystem 매개 변수는 \dir1\dir2를 가리킵니다. 두 문자열 모두 lpBuffer 매개 변수가 가리키는 버퍼에 저장됩니다.
반환 값
함수가 성공하면 반환 값이 NO_ERROR.
함수가 실패하면 반환 값은 다음 값 중 하나와 같이
반환 코드 | 묘사 |
---|---|
|
입력 lpRemoteName 멤버는 네트워크에 대한 기존 네트워크 리소스가 아닙니다. |
|
입력 dwType 멤버가 lpRemoteName 멤버에 지정된 리소스 형식과 일치하지 않습니다. |
|
네트워크 관련 오류가 발생했습니다. WNetGetLastError 호출하여 오류에 대한 설명을 가져옵니다. |
|
lpBuffer 매개 변수가 가리키는 버퍼가 너무 작습니다. |
|
네트워크를 사용할 수 없습니다. |
발언
메모
winnetwk.h 헤더는 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 WNetGetResourceInformation을 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows 2000 Server [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | winnetwk.h |
라이브러리 | Mpr.lib |
DLL | Mpr.dll |
참고 항목
WNetGetNetworkInformation
WNetGetProviderName
WNetGetResourceParent
WNetGetUniversalName
windows 네트워킹 함수