如何从通过USB连接的相机中读取文件

Jam*_*een 7 c# usb winforms

在C#中,如何将文件从相机复制到本地驱动器?相机通过USB连接,不会显示为标准驱动器.

我使用的是Sony Handycam HDR-CX160.我想写一个小的c#windowsform app来复制设备中的视频文件.

那么我的应用程序如何从通过USB连接的设备复制文件?它不会显示为驱动器,但会显示在Windows资源管理器中.当我在C#中搜索驱动器时,它不在列表中?

谢谢!

========更新=======

我将尝试以不同的方式提出这个问题,并希望它会重新开放.

使用C#我需要将文件从相机复制到本地硬盘.如果我新建路径,这行代码就可以实现.

string cameraPath = ?????
string sourcePath = Path.Combine(cameraPath, @"\Video\2012-1-1.WMV");
string targetPath =  @"C:\Video\2012-1-1.WMV";
System.IO.File.Copy(sourceFile, destFile, true);
Run Code Online (Sandbox Code Playgroud)

那我怎么解决cameraPath?还有另一种方法可以一起做到这一点吗?

Mar*_*age 4

我不知道您的设备的具体情况,最好的选择可能是使用您的设备附带的软件。

但是,如果数码相机本身不作为您可以从中读取文件的驱动器,则可能支持Windows 图像采集。在 C# 中使用它的最简单方法是使用Windows Image Acquisition Automation Layer。Scott Hanselman 有一篇旧的 Coding4Fun 文章看看我!通道 9 上的Windows 图像采集。

如果您能够从相机中取出闪存卡,您也可以尝试使用读卡器读取该卡以直接访问文件。

此外,如果您想在连接相机时运行应用程序,则需要注册一个 AutoPlay 事件处理程序。连接相机时会发生一个事件。