The DVD burner functionality makes it possible to burn ISO and DVD images or regular data folders on recordable and writable media.
To begin burning, follow the steps:
1. Create an instance of the LTDVDBurner object.
C Source
ILTDVDBurner * pBurner;
CoCreateInstance
(CLSID_LTDVDBurner, NULL, LSCTX_INPROC_SERVER, IID_ILTDVDBurner, (void**) & pBurner);
C++ Source
ILTDVDBurner * pBurner;
CoCreateInstance
(CLSID_LTDVDBurner, NULL, LSCTX_INPROC_SERVER, IID_ILTDVDBurner, (void**) & pBurner);
2. The burner object can burn an ISO/DVD image or regular data folder (for example, a DVD at C:\DVDImage or an ISO file at "C:\ISOFile\Image.iso").
3. To burn a DVD image, use an empty writable or rewritable DVD. To burn ISO files, use either an empty writeable or rewritable CD or DVD.
4. Eject the drive tray and insert the empty disc:
C Source
ILTDVDBurner_EjectDisc (pBurner);
C++ Source
pBurner->EjectDisc ();
5. Load the tray:
C Source
ILTDVDBurner_LoadDisc (pBurner);
C++ Source
pBurner->LoadDisc ();
6. Associate the DVD image path, ISO file or regular data folder to the burner object:
C Source
//For the DVD image
ILTDVDBurner_put_InputPath (pBurner ,L" C:\\DVDImage");
//For the ISO file
ILTDVDBurner_put_InputPath (pBurner ,L"C:\\ISOFile\\Image.iso");
C++ Source
//For the DVD Image
pBurner->put_InputPath (L" C:\\DVDImage");
//For the ISO file
pBurner->put_InputPath (L"C:\\ISOFile\\Image.iso");
7. Set the Volume name for the disc:
C Source
ILTDVDBurner_put_VolumeName (pBurner,L"DRIVE-1");
C++ Source
pBurner->put_VolumeName (L"DRIVE-1");
8. Retrieve the available speeds for the drive and the empty target disk:
C Source
Long lCount = 0 ;
BSTR bstr = NULL;
ILTDVDBurner_RefreshSpeedList (pBurner);
// Get the number of available speeds
ILTDVDBurner_get_SpeedCount (pBurner, & lCount);
// For each index value, retrieve the name of the speed
// Use this feature to display the names of the available speeds.
For(long i = 0; i < lCount ; i++)
{
ILTDVDBurner_GetSpeedName (pBurner, i, &bstr);
// Do something with the name.
// Free the name after you finish using it
SysFreeString(bstr);
}
C++ Source
Long lCount = 0 ;
BSTR bstr = NULL;
pBurner ->RefreshSpeedList ();
// Get the number of available speeds
pBurner ->get_SpeedCount (& lCount);
// For each index value, retrieve the name of the speed
// Use this feature to display the names of the available speeds.
For(long i = 0 ; i <lCount ; i++)
{
pBurner ->GetSpeedName (i, &bstr);
// Do something with the name
// Free the name after you finish using it
SysFreeString(bstr);
}
9. Select the burning speed:
C Source
//Select the speed that you want
ILTDVDBurner_put_CurrentSpeed (pBurner, lCount - 1);
C++ Source
//Select the speed that you want
pBurner ->put_CurrentSpeed (lCount - 1);
10. Erase the disc if it is required and if the disc is an erasable type:
C Source
VARIANT_BOOL eraseable;
ILTDVDBurner_get_Eraseable (pBurner, &eraseable);
If (eraseable == VARIANT_TRUE)
ILTDVDBurner_Erase (pBurner);
C++ Source
VARIANT_BOOL eraseable;
pBurner ->get_Eraseable ( &eraseable);
If (eraseable == VARIANT_TRUE)
pBurner ->Erase ();
11. Test the burning process, if it is required. Testing the burning process is a simulation of the burning process but without a real burning of the disc. It is much safer when you use a high speed with certain types of discs:
C Source
VARIANT_BOOL testwriteable;
ILTDVDBurner_get_TestWriteable (pBurner, & testwriteable);
If (testwriteable== VARIANT_TRUE)
ILTDVDBurner_TestWrite (pBurner);
C++ Source
VARIANT_BOOL testwriteable;
pBurner ->get_TestWriteable ( & testwriteable);
If (testwriteable== VARIANT_TRUE)
pBurner ->TestWrite ();
12. Now, start burning:
C Source
ILTDVDBurner_Write (pBurner);
C++ Source
pBurner ->Write ();
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET