【问题标题】:How detect if mapped network drive is disconnected using IShellFolder?如何使用 IShellFolder 检测映射的网络驱动器是否断开连接?
【发布时间】:2012-01-26 15:24:56
【问题描述】:

我正在使用IShellFolder 接口来枚举Shell 命名空间对象。这样做我得到了我的映射网络驱动器,其中一些已连接且可用,而另一些则不可用。

我想知道如何检测特定映射驱动器是否可用。有没有我可以使用的方法、shell 函数或属性?

我正在使用IShellFolder.GetAttributesOf() 方法获取驱动器上的各种属性,但没有看到任何表明这一点的东西。

【问题讨论】:

    标签: c# filesystems windows-shell filesystemobject mapped-drive


    【解决方案1】:

    如果映射驱动器断开连接,它将不会出现在GetLogicalDrives 函数返回的位掩码中。

    例如,

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

    【讨论】:

      猜你喜欢
      • 2016-02-12
      • 1970-01-01
      • 2018-02-21
      • 2012-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-30
      相关资源
      最近更新 更多