ببینید مشکل این هست که زمانی که میخواد دایرکتوری های یک درایو رو یکی یکی بخونه به دایرکتوری system volume information و recyclebin میرسه پیغام access denied میده!! خیلی جستجو زدم معمولا گفته بودن باید از try catch استفاده کرد اما باز هم جواب نمیده به روش های مختلف این کار رو کردم اما نشده این هم یکی از نمونه هایی هست که تست کردم و جواب نمیده

foreach (var drive in drives)
{
if (drive.IsReady)
{
try
{
var allFiles = Directory.GetFiles(drive.ToString(), ".*", SearchOption.AllDirectories);
FileList.Items.Add(allFiles.ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}