FolderBrowserDialog提示错误“文件夹xxxx不能被使用”.请选择另一个文件夹

本文关键字:文件夹 另一个 请选择 不能 提示 错误 xxxx FolderBrowserDialog | 更新日期: 2023-09-27 18:08:35

我正在开发一个windows桌面应用程序。它的一个特点是必须访问连接到电脑上的手机上的文件夹。但是,当我使用FolderBrowsreDialog选择手机上的文件夹时,它会显示此错误。"文件夹xxxx无法使用。请选择另一个文件夹。"

我的操作系统是windows 8,我的手机操作系统是android 4.4。我想知道为什么我收到这条消息,以及使用c#访问手机上文件夹的正确方法是什么。

FolderBrowserDialog提示错误“文件夹xxxx不能被使用”.请选择另一个文件夹

话机是否通过UMS或MTP协议与PC相连?

UMS是USB大容量存储,是许多USB存储设备使用的通信协议,如外部硬盘驱动器,闪存驱动器,以及一些电话,MP3播放器和相机。它有效地将设备的存储作为一个标准的存储设备,给出一个驱动器号(在Windows上),并且几乎完全像本地存储设备一样工作。

MTP,或媒体传输协议,是一个更有限的协议,主要由一些电话,相机和MP3播放器/媒体设备支持。它允许访问外部存储设备上更有限的数据子集,并且在Windows中作为特殊设备公开,而不是作为驱动器号。当设备只有一个存储设备(没有外部SD卡)时,通常会出现这种情况,其中一部分保留给系统使用,另一部分作为虚拟SD卡供用户应用使用。

MTP设备不是标准的文件系统,因此许多设计用于与它们一起工作的系统(例如FolderBrowserDialog)将会失败。当您右键单击文件夹或文件时,您可以看到许多shell扩展也丢失了。这是因为它们也依赖于标准的文件系统api,而这些api对于MTP是不可用的。

你可以告诉如果你的手机连接为UMS或MTP通过查看它的图标在我的电脑浏览器窗口-如果它有一个电话图标,它可能是MTP。如果它显示为带有驱动器号的外部驱动器,则可能是UMS。手机本身通常也会显示——我的Nexus 5(安卓4.4)在通知托盘中显示"已连接为媒体设备"。