c# - 从 dvd 和 CD C# 复制和读取文件

标签 c# dvd dvd-burning

我正在尝试在我的项目中使用以下代码。 http://www.codeproject.com/KB/miscctrl/imapi2.aspx

但是,当我运行应用程序并单击“检测媒体”时,它显示“不支持媒体”。

有人可以帮我解决这个问题吗?为什么它说不支持媒体?

谢谢, 迪维亚。

最佳答案

引用Eric的应用程序源代码,这段文字来自MainForm类中的buttonDetectMedia_Click方法:

discFormatData = new MsftDiscFormat2Data();
if (!discFormatData.IsCurrentMediaSupported(discRecorder))
{
    labelMediaType.Text = "Media not supported!";
    _totalDiscSize = 0;
    return;
}

因此,对 IsCurrentMediaSupported 的调用失败了。这实际上是对 IDiscFormat2::IsCurrentMediaSupported 的 COM Interop 调用. MSDN 文档确实提到了一些其他可能的 HRESULT 值,但我希望如果它们出现,a COMException would be thrown .示例代码确实捕获了这个异常,在这种情况下会显示一个消息框 - 但这里不是这种情况。

当我运行示例时,我得到了相同的“不支持媒体!”错误。我有一个 DVD 刻录机,但驱动器中没有光盘(此时我身边没有任何空白光盘!),所以这似乎是您收到该消息的原因之一。我猜想如果驱动器中的媒体不可写或与您的刻录机不兼容,您也会收到该消息。

关于c# - 从 dvd 和 CD C# 复制和读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3972788/

相关文章:

c# - finally block 中的异常

cocoa - cocoa 有免费或商业的 DVD 刻录机 sdk 吗?

command-line - FFmpeg:一些错误,包括无效的帧大小和不完整的帧

c# - 我们可以通过密码以编程方式保护 CD/DVD 吗?

c# - 如何使用 IMAPI2 检索和设置刻录速度?

c# - 从 C# 调用 python 脚本(面向对象的方法)

c# - 重命名可序列化类

c# - DbContext 必须可转换为 System.Data.Entity.DbContext

c++ - 如何以编程方式区分插入的 dvd 或迷你 dvd 磁盘?

.net - 什么是适用于 Windows 或 .Net 的好的 dvd 刻录组件?