从命令行或C#Winform访问Windows Mobile设备

从命令行或C#Winform访问Windows Mobile设备,c#,windows,winforms,C#,Windows,Winforms,我有一个设备连接到我的电脑。Win10为它加载了驱动程序。在Windows资源管理器中,我可以看到设备显示为WindowsCE。我可以打开它并浏览它的文件系统。我想做的是编写一个c#winform应用程序来向其传输文件。不幸的是,我无法通过c#找到它,因为它不是磁盘,也不在c:\users中。我还尝试从命令行使用“wmic logicaldisk get deviceid”,但它不是磁盘,因此不显示 我发现这个设备位于“UMBus枚举器”上,也许这对我们有帮助 你知道我是如何在c#winform

我有一个设备连接到我的电脑。Win10为它加载了驱动程序。在Windows资源管理器中,我可以看到设备显示为WindowsCE。我可以打开它并浏览它的文件系统。我想做的是编写一个c#winform应用程序来向其传输文件。不幸的是,我无法通过c#找到它,因为它不是磁盘,也不在c:\users中。我还尝试从命令行使用“wmic logicaldisk get deviceid”,但它不是磁盘,因此不显示

我发现这个设备位于“UMBus枚举器”上,也许这对我们有帮助


你知道我是如何在c#winforms中掌握它的吗?

我想你不能。您将设备视为文件夹,因为某个应用程序(可能是驱动程序本身)在Windows资源管理器上安装了扩展名,而该应用程序完全负责可视部分和文件传输。@mar:如果Shell可以访问设备,那么您也可以。您可以尝试使用或更高级别的API。@IInspectable:Shell无法访问驱动器,Windows资源管理器可以通过调用负责该设备的应用程序来访问。Windows资源管理器看不到驱动器,而是一个必须连续查询以查找要显示的项目或要执行的操作的黑框perform@mar:Explorer是Shell。如果一个项目出现在资源管理器中,它通常作为一个项目来实现。Shell API允许客户端枚举项,并提供对它们的访问,包括作为扩展实现的项。Explorer不会“调用应用程序”,也不会轮询更改。您所谓的“应用程序”是一个在系统中注册的COM服务器。@IInspectable:我指的正是Shell名称空间扩展,但我保持简单。我的意思是用户不能像访问驱动器一样直接访问设备,因为它不是。使用shell API访问它既不舒适也不简单。