2012-01-26 20 views
0

我正在使用IShellFolder接口來枚舉Shell命名空間對象。這樣做,我得到我的映射網絡驅動器,其中一些連接和可用,其他不是。如何檢測映射的網絡驅動器是否使用IShellFolder斷開連接?

我想知道如何檢測某個特定的映射驅動器是否可用。有一些方法,shell函數或屬性可以使用嗎?

我正在使用IShellFolder.GetAttributesOf()方法來獲取驅動器上的各種屬性,但沒有看到任何可以指示這一點的內容。

回答

0

如果映射的驅動器斷開連接,它將不會出現在由GetLogicalDrives函數返回的位掩碼中。

例如,

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