【问题标题】:how to burn the files selected from listview in a dvd using c#.net code?如何使用 c#.net 代码在 DVD 中刻录从 listview 中选择的文件?
【发布时间】:2010-02-26 10:31:19
【问题描述】:

任何专家都可以帮我解决使用 c#.net 作为前端刻录 dvd 的问题吗? 我需要从 winform 的列表视图中选择文件,然后单击按钮,我需要 刻录 dvd 中的那些 多个 文件。 这个概念是从列表视图中选择多个文件,然后单击按钮,它应该在某个所需的驱动器中创建一个文件夹。然后它应该在 dvd 中刻录完整的文件夹。整个过程应该在单击一个按钮期间执行。 ... 有什么办法吗?? 代码应该兼容在 .net2008 和 windowsXP 中使用给定的代码兼容吗??

我使用组件来获取 dll/类库。来自 (msdn.microsoft.com/en-au/vcsharp/aa336741.aspx) 但它给了我错误消息“d:\filepath\burncomponent.dll 中没有要放置在工具箱中的组件

   private void button1_Click(object sender, EventArgs e)
    {
        XPBurnCD cd = new XPBurnCD();
        cd.BurnComplete += new NotifyCompletionStatus(BurnComplete);

        MessageBox.Show(cd.BurnerDrive);

        DirectoryInfo dir = new DirectoryInfo(_burnFolder);
        foreach (FileInfo file in dir.GetFiles())
        {
            cd.AddFile(file.FullName, file.Name);
        }

        cd.RecordDisc(false, false);


    }

    private void BurnComplete(uint status)
    {
        MessageBox.Show("Finished writing files to disc");
    }

    private void button2_Click_1(object sender, EventArgs e)
    {

        FolderBrowserDialog fbd = new FolderBrowserDialog();
        fbd.ShowNewFolderButton = false;
        fbd.Description = "Please select a folder";
        fbd.RootFolder = System.Environment.SpecialFolder.DesktopDirectory;

        if (fbd.ShowDialog() == DialogResult.OK)
        {
            _burnFolder = fbd.SelectedPath;
        }
        else
        {
            _burnFolder = string.Empty;
        }
    }

【问题讨论】:

    标签: c# .net winforms dvd-burning


    【解决方案1】:

    【讨论】:

    • 另一个选项是codeproject.com/KB/miscctrl/imapi2.aspx 这是一篇好文章
    • 这个兼容在winxp和.net2008中使用吗
    • 感谢您提供详细信息...但我需要知道此应用程序是否需要下载?代码不会直接在windows XP sp2/sp3中运行吗...
    • 嗨 Zoya,查看gangleri.net/2010/03/02/… 这是我拼凑的一个示例,它使用 XPBurn,它适用于 WindowsXP SP3,因此它也应该适用于 SP2。
    • “Windows 推出了新的 IMAPIv2.0 与 Vista 操作系统的发布” - 本文适用于 Vista 以上,如果您使用的是 Windows XP,本文将不适用。
    【解决方案2】:

    一种简单的方法是使用属于 XP 的命令行工具dvdburncdburn。例如看看this site

    更新

    是的,它是一个控制台应用程序,但您可以使用Process class 在.Net 应用程序中启动它。在这里您应该特别深入了解StartInfo 属性及其members,因为您可以在这里设置参数或将输出重定向到您的程序中以获取有关程序正在执行的操作的信息。

    【讨论】:

    • 谢谢先生,但我需要 ac#.net 代码..而不是 DOS cmd..我需要使用 c# 代码将文件刻录到 dvd 中..我是第一次这样做,请帮帮我
    猜你喜欢
    • 2010-10-26
    • 1970-01-01
    • 2013-11-20
    • 1970-01-01
    • 2011-02-02
    • 2018-11-22
    • 2011-05-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多