Win32 : API 호출 서버에서 사용 가능한 네트워크 공유를 나열 하시겠습니까?

StackOverflow https://stackoverflow.com/questions/899995

문제

IP 1.2.3.4의 SMB 서버에 액세스 할 수 있다고 가정하면 사용 가능한 주식 목록을 어떻게 결정할 수 있습니까?

UNC 경로를 입력하면 Windows 탐색기가 할 수 있습니다.

일반적인 findfirstfile/findnext 호출을 시도했습니다. 각 공유에서 파일과 디렉토리를 성공적으로 읽는 데 성공했지만 서버 루트에서 직접 작동하지 않습니다.

이상적으로는 XP에서 작동하는 것이 필요합니다.

편집하다: 명령 줄보다는 프로그램적 으로이 작업을 수행하고 싶습니다. 'Net View 1.2.3.4'에서 출력을 리디렉션하고 구문 분석하는 것이 효과가 있지만이 작업에 대한 API를 찾고 있습니다.

도움이 되었습니까?

해결책

문서에 따르면 a NetShareEnum 그리고 a WNetEnumResource 기능.

다른 팁

Net View 1.2.3.4

체크 아웃 http://www.ss64.com/nt/net_share.html

편집 :이 작업을 프로그래밍 방식으로하고 싶다면 NETSHAREENUM 작동 할 것이다.

WMI를 사용 하여이 정보를 얻을 수 있습니다. 확인하다 이 게시물 Win32_Share WMI 객체를 사용하는 지금 보여주는 일부 깔끔한 PowerShell 튜토리얼의 경우.

WMI를 사용하지 마십시오 (기본적으로 설치되지 않음)
Win32 API를 사용하여 주식을 열거하고 Google 그룹에 수백만 번 게시했습니다 (Win32)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top