Go Back   Club CDFreaks - Knowledge is Power > International Chat: Software related > Nero SDK Discussion Forum


Commercial message



Nero SDK Discussion Forum Discuss, c# and directories at International Chat: Software related forum; How do I burn whole directories using C#.


Reply
 
Thread Tools
Old 01-04-2004   #1 (permalink)
New on Forum
 
Join Date: Mar 2004
Posts: 10
c# and directories

How do I burn whole directories using C#.
Curtis is offline   Reply With Quote
Old 05-04-2004   #2 (permalink)
New on Forum
 
Join Date: Mar 2004
Posts: 10
Here is my attempt. This is based off the following thread.

http://club.cdfreaks.com/showthread....threadid=77167

It is written in VB. At the present time this code does not work. I get an exception the parameter is incorrect. Any thoughts.

private int dcnt;
private void DoIsoTrack(System.IO.DirectoryInfo dir,NEROLib.NeroFolder folder)
{
NEROLib.NeroFolder subfolder = new NEROLib.NeroFolderClass();
subfolder.Name = dir.Name;
folder.Folders.Add(subfolder);
dcnt+=1;
foreach(System.IO.DirectoryInfo dir1 in dir.GetDirectories())
{
NEROLib.NeroFolder folder2 = new NEROLib.NeroFolderClass();
folder2.Name = dir1.Name;
folder.Folders.Add(folder2);
}
foreach(System.IO.FileInfo files in dir.GetFiles())
{
NEROLib.NeroFile file = new NEROLib.NeroFileClass();
file.Name = files.Name;
file.SourceFilePath = files.FullName;
subfolder.Files.Add(file);

}

}
private void Burn_Click(object sender, System.EventArgs e)
{
Abort.Enabled =true;
Browse.Enabled=false;
Burn.Enabled=false;

try
{
NEROLib.NeroFolder folder= new NEROLib.NeroFolderClass();
drives =(NEROLib.NeroDrivesClass)nero.GetDrives(NEROLib.NERO_MEDIA_TYPE.NERO_MEDIA_CDR);
drive=(NEROLib.NeroDrive)drives.Item(AvailableDevices.SelectedIndex);
NEROLib.NeroISOTrackClass isotrack=new NEROLib.NeroISOTrackClass();
isotrack.Name="test";
isotrack.RootFolder=folder.Folders.Item(0);

System.IO.DirectoryInfo dirFolder;
dirFolder = new DirectoryInfo (edtFileName.Text );
DoIsoTrack(dirFolder ,folder);


isotrack.BurnOptions=NEROLib.NERO_BURN_OPTIONS.NERO_BURN_OPTION_CREATE_ISO_FS;


drive.BurnIsoAudioCD("Gentek", "Title", false, isotrack, null, null, NEROLib.NERO_BURN_FLAGS.NERO_BURN_FLAG_SIMULATE | NEROLib.NERO_BURN_FLAGS.NERO_BURN_FLAG_WRITE, 8, NEROLib.NERO_MEDIA_TYPE.NERO_MEDIA_CD);

}
catch(Exception ex)
{
strMessages=strMessages+ex.Message+"\r\n";
edtMessages.AppendText(strMessages);


}
}
Curtis is offline   Reply With Quote
Old 05-04-2004   #3 (permalink)
New on Forum
 
Join Date: Mar 2004
Posts: 10
Well, I guess everyone is on spring break. I wish that I was you. Any how here is the solution I came up. I've tested it and it seem to work well. Have fun.



public void DoIsoTrack(System.IO.DirectoryInfo dir,NEROLib.NeroFolder folder)
{
foreach(System.IO.FileInfo files in dir.GetFiles())
{
NEROLib.NeroFileClass file = new NEROLib.NeroFileClass();
file.Name = files.Name;
file.SourceFilePath = files.FullName;
folder.Files.Add(file);
}
foreach(System.IO.DirectoryInfo dir1 in dir.GetDirectories())
{
NEROLib.NeroFolderClass folder2 = new NEROLib.NeroFolderClass();
folder2.Name = dir1.Name;
folder.Folders.Add(folder2);
DoIsoTrack(dir1,folder2);

}



}
private void Burn_Click(object sender, System.EventArgs e)
{
Abort.Enabled =true;
Browse.Enabled=false;
Burn.Enabled=false;

try
{

NEROLib.NeroFolderClass Folder= new NEROLib.NeroFolderClass();

drives =(NEROLib.NeroDrivesClass)nero.GetDrives(NEROLib.NERO_MEDIA_TYPE.NERO_MEDIA_CDR);

drive=(NEROLib.NeroDrive)drives.Item(AvailableDevices.SelectedIndex);

NEROLib.NeroISOTrackClass isotrack=new NEROLib.NeroISOTrackClass();

isotrack.Name=Folder.Name;
isotrack.RootFolder=Folder;

System.IO.DirectoryInfo dirFolder;
dirFolder = new System.IO.DirectoryInfo(edtFileName.Text );
DoIsoTrack(dirFolder ,Folder);

NEROLib.NeroSpeedsClass Speed = (NEROLib.NeroSpeedsClass)drive.WriteSpeeds;
isotrack.BurnOptions=NEROLib.NERO_BURN_OPTIONS.NERO_BURN_OPTION_CREATE_ISO_FS;

drive.BurnIsoAudioCD("","",false,isotrack,null,null,NEROLib.NERO_BURN_FLAGS.NERO_BURN_FLAG_WRITE,10,NEROLib.NERO_MED IA_TYPE.NERO_MEDIA_CDRW);
}
catch(Exception ex)
{
strMessages=strMessages+ex.Message+"\r\n";
edtMessages.AppendText(strMessages);


}
}
Curtis is offline   Reply With Quote
 
Reply


If you can't find where you are looking for, then become a member and get an answer fast! We have thousands of people online every moment of the day to help you! Click here



Bookmarks

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are Off
Pingbacks are Off
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
How to rar multiples directories by name? apryan Newbie Forum 6 02-07-2007 16:56
Mp3cd with directories classiczone Burning Software 1 23-02-2007 14:42
NeroCMD and more than 1000 directories Bol Nero SDK Discussion Forum 2 04-02-2004 08:46
burning directories with NeroAPI zavoshi Nero SDK Discussion Forum 13 28-10-2003 11:30
Burning directories rcortes Nero SDK Discussion Forum 3 23-10-2003 10:12


All times are GMT +2. The time now is 15:50.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.1.0