0

IShellFolder 인터페이스를 사용하여 셸 네임 스페이스 개체를 열거합니다. 이렇게하면 매핑 된 네트워크 드라이브를 얻게되는데, 그 중 일부는 연결되어 있고 다른 드라이브는 사용할 수 없습니다.매핑 된 네트워크 드라이브가 IShellFolder를 사용하여 연결이 끊어지면 어떻게 탐지합니까?

특정 매핑 된 드라이브를 사용할 수 있는지 여부를 어떻게 확인할 수 있는지 알고 싶습니다. 사용할 수있는 메소드, 쉘 함수 또는 속성이 있습니까?

나는 드라이브에서 다양한 속성을 얻으려면 IShellFolder.GetAttributesOf() 메서드를 사용하고 있지만 여기에는 아무것도 표시되지 않습니다.

답변

0

매핑 된 드라이브의 연결이 끊어지면 GetLogicalDrives 함수가 반환 한 비트 마스크에 나타나지 않습니다. 예를 들어

,

wchar_t wchDriveLetter = L'P'; // example 
int iDriveNumber = towupper(wchDriveLetter) - L'A'; 
bool fIsDisconnected = (GetLogicalDrives() & (1 << iDriveNumber)) == 0;