Esempio n. 1
0
        /// <summary>
        /// Сканирование файла
        /// </summary>
        /// <param name="path">Путь к файлу</param>
        /// <param name="clearVirusList">True для удаления всех сохраненных вирусов</param>
        public void ScanFile(string path, bool clearVirusList)
        {
            if (clearVirusList)
            {
                ClearVirusList();
            }
            VirusFile fileForCheack = new VirusFile(path);
            bool      findSignature = false;

            Counter.SetMaxValue(1, Enams.ResetStatus.Reset);
            if (SignatureM)
            {
                if (fileForCheack.Signature != null && SignatureString != string.Empty)
                {
                    if (SignatureString.Contains(fileForCheack.Signature))
                    {
                        if (AutoDeleteVirus)
                        {
                            fileForCheack.DeleteFile();
                        }
                        else
                        {
                            AddInDangerFile(this, new FindDangerEventArgs(fileForCheack));
                        }
                        findSignature = true;
                    }
                }
            }
            if (EvrizmM)
            {
                if (!findSignature)
                {
                    string fileSignature = File.ReadAllText(fileForCheack.Path);
                    foreach (var signature in EvrizmSignature.signatures)
                    {
                        if (fileSignature.Contains(signature))
                        {
                            if (AutoDeleteVirus)
                            {
                                fileForCheack.DeleteFile();
                            }
                            else
                            {
                                AddInDangerFile(this, new FindDangerEventArgs(fileForCheack));
                            }
                            //DangerFiles.Add(fileForCheack);
                            break;
                        }
                    }
                }
            }
            Counter.Inc();
        }
Esempio n. 2
0
 private void quarantine(VirusFile virusFile)
 {
 }