执行以下步骤来创建并运行一个多媒体的录像带转成DVD光盘使用LEADTOOLS多媒体Conver188宝金博怎么下载tCtrl转换应用程序控制和DVD附加模块。
启动Visual Studio。
选择文件- >新- >项目……从菜单中。
在新项目对话框中,选择“Visual c#项目”或“VB项目“项目类型列表中,选择“Windows应用程序“在模板列表中。
输入项目名称为“188宝金博怎么下载多媒体的录像带转成dvd光盘转换器“在项目名称字段,然后单击好吧。如果需要,输入一个新的位置为您的项目使用或选择一个目录浏览按钮,然后单击好吧。
在“解决方案资源管理器”窗口中,右键单击“引用”文件夹,并选择“添加引用…“从上下文菜单。在“添加引用”对话框中,选择“net”选项卡并选择Leadtools.188宝金博怎么下载Multimedia和Leadtools.MediaWriter并点击好吧。
确保Form1在设计视图。去工具箱(视图- >工具箱)和阻力ConvertCtrl控制表单。注意:如果你没有ConvertCtrl在工具箱中选择工具- >选择工具箱项目从菜单中。点击浏览然后选择Leadtools.188宝金博怎么下载Multimedia.dll从“< LEADTOOLS_INSTALLDIR > \ Bin \ Dotnet4 \ Win32”,然后单击开放然后点击好吧。将其添加到表单后,设置以下属性转换控制:
财产 | 价值 |
---|---|
的名字 | _convertctrl |
锚 | 上,下,左,右 |
背景色 | 黑色的 |
去工具箱(视图- >工具箱)并拖动一个ProgressBar控制形式(低于转换控制)和设置以下属性:
财产 | 价值 |
---|---|
的名字 | _progress |
锚 | 下,左,右 |
一步 | 1 |
去工具箱(视图- >工具箱)并拖动文本控件的形式(在进度控制)和设置以下属性:
财产 | 价值 |
---|---|
的名字 | _textStatus |
锚 | 下,从左 |
边框样式 | 没有一个 |
背景色 | 控制 |
字体颜色 | 突出 |
去工具箱(视图- >工具箱)并拖动两个按钮控件的底部形式和设置以下属性:
财产 | 价值 |
---|---|
的名字 | _buttonConvert |
文本 | 转换 |
锚 | 下,右 |
的名字 | _buttonBurn |
文本 | 燃烧 |
锚 | 下,右 |
开关Form1代码视图(右键单击Form1在解决方案资源管理器然后选择视图代码),并添加以下行开始的文件:
进口Leadtools.188宝金博怎么下载Multimedia
进口Leadtools.MediaWriter
使用Leadtools.188宝金博怎么下载Multimedia;
使用Leadtools.MediaWriter;
声明以下私有变量:
私人_sourceFile作为字符串
私人_targetPath作为字符串
私人_aborted作为布尔
私人字符串_sourceFile;
私人字符串_targetPath;
私人bool_aborted;
将事件处理程序添加到Form1加载事件,代码如下:
私人子Form1_Load (按值传递发送方作为System.Object,按值传递e作为System.EventArgs)处理MyBase.Load
_sourceFile =“< LEADTOOLS_INSTALLDIR > \媒体\ DaDa_DVD_MPEG2.mpg”
_targetPath = Path.Combine (Directory.GetCurrentDirectory (),“DVD”)
_textStatus。文本=字符串空虚
_buttonConvert。启用了=真正的
_buttonBurn。启用了=假
如果(不Directory.Exists (_targetPath))然后
Directory.CreateDirectory (_targetPath)
结束如果
结束子
私人无效Form1_Load (对象发送者,系统。EventArgs e)
{
_sourceFile =@“< LEADTOOLS_INSTALLDIR > \媒体\ DaDa_DVD_MPEG2.mpg”;
_targetPath = Path.Combine (Directory.GetCurrentDirectory (),“DVD”);
_textStatus。文本=字符串空虚;
_buttonConvert。启用了=真正的;
_buttonBurn。启用了=假;
如果(! Directory.Exists (_targetPath))
Directory.CreateDirectory (_targetPath);
}
将事件处理程序添加到_convertctrl进步事件,代码如下:
私人子_convertctrl_Progress (按值传递发送方作为System.Object,按值传递e作为ProgressEventArgs)处理_convertctrl.Progress
_progress。值=CInt((_progress。最大* e。百分比/ 100)
结束子
私人无效_convertctrl_Progress (对象发送方,ProgressEventArgs e)
{
_progress。值= (int)(_progress。最大* e。百分比/ 100);
}
添加一个事件处理程序来_convertctrl完成事件,代码如下:
私人子_convertctrl_Complete (按值传递发送方作为System.Object,按值传递e作为EventArgs)处理_convertctrl.Complete
_textStatus。文本=“DVD格式完成转换”
_buttonBurn。启用了=真正的
结束子
私人无效_convertctrl_Complete (对象发送方的EventArgs e)
{
_textStatus。文本=“DVD格式完成转换”;
_buttonBurn。启用了=真正的;
}
_buttonConvert单击事件添加一个事件处理程序,代码如下:
私人子_buttonConvert_Click (按值传递发送方作为System.Object,按值传递e作为System.EventArgs)处理_buttonConvert.Click
ConvertVideoToDvdFormat ()
结束子
私人无效_buttonConvert_Click (对象发送者,系统。EventArgs e)
{
ConvertVideoToDvdFormat ();
}
_buttonBurn单击事件添加一个事件处理程序,代码如下:
私人子_buttonProcessor_Click (按值传递发送方作为System.Object,按值传递e作为System.EventArgs)处理_buttonProcessor.Click
BurnDvdToDisc ()
结束子
私人无效_buttonProcessor_Click (对象发送者,系统。EventArgs e)
{
BurnDvdToDisc ()
}
添加以下辅助方法用于_buttonConvert和_buttonBurn事件处理程序:
私人子ConvertVideoToDvdFormat ()
试一试
_convertctrl。预览=真正的
_convertctrl。源文件= _sourceFile
“选择视频和音频压缩器
_convertctrl.VideoCompressors.Mpeg2。选择=真正的
_convertctrl.AudioCompressors.AC3。选择=真正的
“选择DVD目标格式
昏暗的特遣部队作为TargetFormat = _convertctrl.TargetFormats (TargetFormatType.DVD)
特遣部队。选择=真正的
”设置允许捕捉流
_convertctrl。AllowedStreams = tf.Streams
_convertctrl。TargetFile = _targetPath
_convertctrl.StartConvert ()
_textStatus。文本=“视频格式转换的DVD格式”
_buttonBurn。启用了=假
_buttonConvert。启用了=假
抓前女友作为异常
MessageBox.Show (我ex.Message)
结束试一试
结束子
私人子BurnDvdToDisc ()
_progress。值= 0
_progress。最大= 10000
试一试
昏暗的dvdBurner作为MediaWriter =新MediaWriter ()
昏暗的dvdDrive作为MediaWriterDrive = dvdBurner.Drives (1)
昏暗的dvdDisc作为MediaWriterDisc = dvdDrive.CreateDisc ()
dvdDisc。VolumeName =“DVD卷1”
dvdDisc。InputPath = @“C: \ InputFiles”
dvdDrive。AutoEject =真正的
AddHandlerdvdDrive.OnProgress,AddressOfBurnProgress
_progress。值= 0
_textStatus。文本=字符串空虚
_aborted =假
dvdDrive.LoadDisc ()
dvdDrive.BurnDisc (dvdDisc)
做而dvdDrive。状态= MediaWriterState.StateIdle
Application.DoEvents ()
循环
做而dvdDrive。状态= MediaWriterState.StateWriting
如果_aborted然后
扔新异常(“DVD手术流产”)
结束如果
Application.DoEvents ()
循环
RemoveHandlerdrive.OnProgress,AddressOfBurnProgress
_buttonConvert。启用了=真正的
_buttonBurn。启用了=真正的
抓前女友作为异常
MessageBox.Show (ex.Message)
结束试一试
结束子
公共子BurnProgress (按值传递发送方作为对象,按值传递evt作为MediaWriterProgressEventArgs)
_progress。值=evt。Complete
_textStatus。文本=evt。Description
如果evt。进步= MediaWriterProgress.OperationProgressAborting然后
_aborted =真正的
结束如果
结束子
私人无效ConvertVideoToDvdFormat ()
{
试一试
{
_convertctrl。预览=真正的;
_convertctrl。源文件= _sourceFile;
/ /选择视频和音频压缩器
_convertctrl.VideoCompressors.Mpeg2。选择=真正的;
_convertctrl.AudioCompressors.AC3。选择=真正的;
/ /选择DVD目标格式
TargetFormat tf = _convertctrl.TargetFormats [TargetFormatType.DVD];
特遣部队。选择=真正的;
/ /设置允许捕捉流
_convertctrl。AllowedStreams = tf.Streams;
_convertctrl。TargetFile = _targetPath;
_convertctrl.StartConvert ();
_textStatus。文本=“视频格式转换的DVD格式”;
_buttonBurn。启用了=假;
_buttonConvert。启用了=假;
}
抓(异常交货)
{
MessageBox.Show (这,ex.Message);
}
}
私人无效BurnDvdToDisc ()
{
_progress。值= 0;
_progress。最大= 10000;
试一试
{
MediaWriter dvdBurner =新MediaWriter ();
MediaWriterDrive dvdDrive = dvdBurner.Drives [1];
MediaWriterDisc dvdDisc = dvdDrive.CreateDisc ();
dvdDisc。VolumeName =“DVD卷1”;
dvdDisc。InputPath =@“C: \ InputFiles”;
dvdDrive。AutoEject =真正的;
dvdDrive。OnProgress + = BurnProgress;
_progress。值= 0;
_textStatus。文本=字符串空虚;
_aborted =假;
dvdDrive.LoadDisc ();
dvdDrive.BurnDisc (dvdDisc);
而(dvdDrive。状态= MediaWriterState.StateIdle)
{
Application.DoEvents ();
}
而(dvdDrive。状态= MediaWriterState.StateWriting)
{
如果(_aborted)
{
扔新异常(“DVD手术流产”);
}
Application.DoEvents ();
}
开车。OnProgress - = BurnProgress;
_buttonConvert。启用了=真正的;
_buttonBurn。启用了=真正的
}
抓(异常交货)
{
MessageBox.Show (ex.Message);
}
}
公共无效BurnProgress(对象发送方,EventArgs evt)
{
_progress。值=evt。Complete;
_textStatus。文本=evt。Description;
如果(evt)。进步= = MediaWriterProgress.OperationProgressAborting)
{
_aborted =真正的;
}
}
构建和运行程序来测试它。