Как определить, отключен ли подключенный сетевой диск с помощью IShellFolder? - PullRequest
1 голос
/ 26 января 2012

Я использую интерфейс IShellFolder для перечисления объектов пространства имен Shell.При этом я получаю подключенные сетевые диски, некоторые из которых подключены и доступны, а другие нет.

Я бы хотел узнать, как определить, доступен ли конкретный подключенный диск.Есть ли какой-либо метод, функция оболочки или атрибут, который я могу использовать?

Я использую метод IShellFolder.GetAttributesOf() для получения различных атрибутов на диске, но не вижу там ничего, что указывало бы на это.

1 Ответ

1 голос
/ 04 сентября 2012

Если подключенный диск отключен, он не будет отображаться в битовой маске, возвращаемой функцией GetLogicalDrives.

Например,

wchar_t wchDriveLetter = L'P'; // example
int iDriveNumber = towupper(wchDriveLetter) - L'A';
bool fIsDisconnected = ( GetLogicalDrives() & ( 1 << iDriveNumber ) ) == 0;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...