Verificação recursiva simples de arquivos

Esta pode não ser a maneira mais ortodoxa de verificar um diretório, mas é útil para registrar arquivos durante a verificação.

using System.IO;

static void ScanDir(string dir)
{
try
{
foreach (string d in Directory.GetDirectories(dir))
{
foreach (string file in Directory.GetFiles(d))
{
//Log each file path
Console.WriteLine(file);
}
//Scan next directory
ScanDir(d);
}
}
catch (System.Exception ex)
{
Console.WriteLine(ex.Message);
}
}