执行以下步骤来创建并运行一个多媒体的录像带转成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.ClickConvertVideoToDvdFormat ()结束子
私人无效_buttonConvert_Click (对象发送者,系统。EventArgs e){ConvertVideoToDvdFormat ();}
_buttonBurn单击事件添加一个事件处理程序,代码如下:
私人子_buttonProcessor_Click (按值传递发送方作为System.Object,按值传递e作为System.EventArgs)处理_buttonProcessor.ClickBurnDvdToDisc ()结束子
私人无效_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.StateIdleApplication.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 =真正的;}}
构建和运行程序来测试它。