public static void StartSingleFileScan(string filePath, AvailableHashAlgorithms hashAlgorithm) { Scan scan = new Scan { FilePath = filePath, HashAlgorithm = new FIMHashAlgorithm { Id = (int)hashAlgorithm }, Time = DateTime.Now }; try { FileScan.ScanFile(filePath, scan); } catch (Exception ex) { Logger.Log(ex.Message, LogType.Error); } }
public static void StartScanConsole(string filePath, bool recursive, AvailableHashAlgorithms hashAlgorithm) { Scan scan = new Scan { FilePath = filePath, HashAlgorithm = new FIMHashAlgorithm { Id = (int)hashAlgorithm }, Time = DateTime.Now }; scan.Insert(); //insert scan in database List <string> allFiles = DirectoryParser.GetAllFiles(filePath, recursive); int nFiles = allFiles.Count; int i = 0; Console.WriteLine("Scanning ..."); foreach (string file in allFiles) { try { FileScan.ScanFile(file, scan); Console.WriteLine(Math.Ceiling(((double)i / nFiles) * 100).ToString() + "%"); Console.SetCursorPosition(0, Console.CursorTop - 1); System.Threading.Thread.Sleep(50); i++; } catch (Exception ex) { Logger.Log(ex.Message, LogType.Error); continue; } } }