Take the following steps to start a project and to add some code that burns an ISO file, or a directory of files to disc
Start Visual Studio.
Choose File->New->Project… from the menu.
In the New Project dialog box, choose either "Visual C# Projects" or "VB Projects" in the Projects Type List, and choose "Windows Application" in the Templates List.
Type the project name as "Burn ISO and CD_DVD Files" in the Project Name field, and then choose OK. If desired, type a new location for your project or select a directory using the Browse button, and then choose OK.
In the "Solution Explorer" window, right-click on the "References" folder, and select "Add Reference…" from the context menu. In the "Add Reference" dialog box, select the ".NET" tab and browse to Leadtools For .NET "<LEADTOOLS_INSTALLDIR>\Bin\Dotnet\Win32 " folder and select the following DLLs:
Click the Select button and then press the OK button to add the above DLLs to the application.
Make sure Form1 is in design view. Go to the toolbox (View->Toolbox) and add the following controls to the form.
Switch to Form1 code view (right-click Form1 in the solution explorer then select View Code ) and add the following lines at the beginning of the file:
Imports Leadtools
Imports Leadtools.MediaWriter
using Leadtools;
using Leadtools.MediaWriter;
Add the following class level variables::
Dim mediaWriter as MediaWriter
Dim burnerDrive as MediaWriterDrive
MediaWriter mediaWriter;
MediaWriterDrive burnerDrive;
Add an event handler to the Form1 Load event and add the following code:
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs)
mediaWriter = New MediaWriter()
_cmbDrives.Items.Clear()
For Each drive As MediaWriterDrive In mediaWriter.Drives
_cmbDrives.Items.Add(drive.Name)
Next drive
_cmbDrives.SelectedIndex = mediaWriter.CurrentDriveNumber + 1
End Sub
private void Form1_Load(object sender, System.EventArgs e)
{
mediaWriter = new MediaWriter();
_cmbDrives.Items.Clear();
foreach (MediaWriterDrive drive in mediaWriter.Drives)
{
_cmbDrives.Items.Add(drive.Name);
}
_cmbDrives.SelectedIndex = mediaWriter.CurrentDriveNumber + 1;
}
Add an event handler to the _cmbDrives SelectedIndexChanged event and add the following code:
Private Sub _cmbDrives_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs)
mediaWriter.CurrentDriveNumber = _cmbDrives.SelectedIndex - 1
If Not burnerDrive Is Nothing Then
burnerDrive.OnDeviceEvent -= burnerDrive_OnDeviceEvent
End If
burnerDrive = mediaWriter.CurrentDrive
'Only add device event for valid drives
If burnerDrive.DriveNumber <> -1 Then
AddHandler burnerDrive.OnDeviceEvent, AddressOf Of MediaWriterDevNotifyEventArgs
End If
_btnWrite.Enabled = burnerDrive.Writeable
End Sub
private void _cmbDrives_SelectedIndexChanged(object sender, System.EventArgs e)
{
mediaWriter.CurrentDriveNumber = _cmbDrives.SelectedIndex - 1;
if (burnerDrive != null)
burnerDrive.OnDeviceEvent -= burnerDrive_OnDeviceEvent;
burnerDrive = mediaWriter.CurrentDrive;
//Only add device event for valid drives
if (burnerDrive.DriveNumber != -1)
burnerDrive.OnDeviceEvent += new EventHandler<MediaWriterDevNotifyEventArgs>(burnerDrive_OnDeviceEvent);
_btnWrite.Enabled = burnerDrive.Writeable;
}
Add an event handler to the _btnWrite Click event and add the following code:
Private void Function btnWrite_Click(ByVal sender As Object, ByVal e As System.EventArgs) As _
If String.IsNullOrEmpty(_txtInput.Text) Then
MessageBox.Show("You must choose an input file" & Constants.vbFormFeed & "older")
Return
End If
Dim burnDisc As MediaWriterDisc = burnerDrive.CreateDisc()
burnDisc.SourcePathName = _txtInput.Text
burnDisc.VolumeName = "LEAD Media"
burnerDrive.BurnDisc(burnDisc)
Me.Text = "Writing"
Do While burnerDrive.State = MediaWriterState.StateWriting
'Loop until complete
Application.DoEvents()
Loop
this.Text = "Complete";
MessageBox.Show("Complete")
End Function
private void _ btnWrite_Click(object sender, System.EventArgs e)
{
if (String.IsNullOrEmpty(_txtInput.Text))
{
MessageBox.Show("You must choose an input file\folder");
return;
}
MediaWriterDisc burnDisc = burnerDrive.CreateDisc();
burnDisc.SourcePathName = _txtInput.Text;
burnDisc.VolumeName = "LEAD Media";
burnerDrive.BurnDisc(burnDisc);
this.Text = "Writing";
while (burnerDrive.State == MediaWriterState.StateWriting)
{
//Loop until complete
Application.DoEvents();
}
this.Text = "Complete";
MessageBox.Show("Complete");
}
Add the following class function.
Private Sub burnerDrive_OnDeviceEvent(ByVal sender As Object, ByVal e As MediaWriterDevNotifyEventArgs)
_btnWrite.Enabled = burnerDrive.Writeable
End Sub
void burnerDrive_OnDeviceEvent(object sender, MediaWriterDevNotifyEventArgs e)
{
_btnWrite.Enabled = burnerDrive.Writeable;
}
Build, and Run the program to test it. Select your burner from the drives list, fill the textbox with the path to a valid ISO image or directory of files, and click the "Write" button.
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.