├── antivirus ├── lastversion.txt ├── Resources │ ├── cls.png │ ├── logo.png │ ├── min.png │ ├── qst.png │ ├── wave.png │ ├── favicoOK.ico │ └── favicoinfected.ico ├── App.config ├── Properties │ ├── Settings.settings │ ├── Settings.Designer.cs │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ └── Resources.resx ├── Program.cs ├── loadingscreen.Designer.cs ├── databaseworker.csproj ├── FullScan.cs ├── FastScan.cs ├── loadingscreen.ru.resx ├── Scan.cs ├── InfANT.csproj └── loadingscreen.resx ├── launcher ├── LanguageResources.ru.Designer.cs ├── prgbar.dll ├── Resources │ └── icoExplr.ico ├── App.config ├── Properties │ ├── Settings.settings │ ├── Settings.Designer.cs │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ └── Resources.resx ├── Program.cs ├── launcher.csproj ├── launchermain.Designer.cs ├── LanguageResources.resx ├── LanguageResources.ru.resx └── launchermain.ru.resx ├── .travis.yml ├── progressBar ├── notice.txt ├── prgbar │ ├── prgbar.csproj.DotSettings │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── BlueProgressBar.Designer.cs │ ├── prgBar.csproj │ ├── BlueProgressBar.resx │ └── BlueProgressBar.cs └── prgbar.sln ├── databaseWorker ├── App.config ├── Properties │ ├── Settings.settings │ ├── Settings.Designer.cs │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ └── Resources.resx ├── Program.cs ├── databaseWorker.csproj ├── LanguageResources.resx ├── LanguageResources.Designer.cs ├── LanguageResources.ru.resx ├── databaseeditor.Designer.cs ├── databaseeditor.cs └── databaseeditor.ru.resx ├── .gitattributes ├── LICENSE.txt ├── ISSUE_TEMPLATE.md ├── antivirus.sln ├── README.md └── .gitignore /antivirus/lastversion.txt: -------------------------------------------------------------------------------- 1 | 2.2.0.0 -------------------------------------------------------------------------------- /launcher/LanguageResources.ru.Designer.cs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: csharp 2 | solution: antivirus.sln -------------------------------------------------------------------------------- /launcher/prgbar.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/launcher/prgbar.dll -------------------------------------------------------------------------------- /antivirus/Resources/cls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/antivirus/Resources/cls.png -------------------------------------------------------------------------------- /antivirus/Resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/antivirus/Resources/logo.png -------------------------------------------------------------------------------- /antivirus/Resources/min.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/antivirus/Resources/min.png -------------------------------------------------------------------------------- /antivirus/Resources/qst.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/antivirus/Resources/qst.png -------------------------------------------------------------------------------- /antivirus/Resources/wave.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/antivirus/Resources/wave.png -------------------------------------------------------------------------------- /launcher/Resources/icoExplr.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/launcher/Resources/icoExplr.ico -------------------------------------------------------------------------------- /antivirus/Resources/favicoOK.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/antivirus/Resources/favicoOK.ico -------------------------------------------------------------------------------- /antivirus/Resources/favicoinfected.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vanyasem/InfANT/HEAD/antivirus/Resources/favicoinfected.ico -------------------------------------------------------------------------------- /progressBar/notice.txt: -------------------------------------------------------------------------------- 1 | It's a seperate component that can be used somewhere else. 2 | You are free to use it if you want to. 3 | Just to point: it blinks a little when you change it's value. -------------------------------------------------------------------------------- /antivirus/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /launcher/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /databaseWorker/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /antivirus/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /launcher/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /databaseWorker/Properties/Settings.settings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /progressBar/prgbar/prgbar.csproj.DotSettings: -------------------------------------------------------------------------------- 1 | 2 | No -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /launcher/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows.Forms; 3 | 4 | namespace launcher 5 | { 6 | static class Program 7 | { 8 | /// 9 | /// The main entry point for the application. 10 | /// 11 | [STAThread] 12 | static void Main() 13 | { 14 | Application.EnableVisualStyles(); 15 | Application.SetCompatibleTextRenderingDefault(false); 16 | Application.Run(new Mainupdater()); 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /databaseWorker/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using System.Windows.Forms; 6 | 7 | namespace databaseworker 8 | { 9 | static class Program 10 | { 11 | /// 12 | /// The main entry point for the application. 13 | /// 14 | [STAThread] 15 | static void Main() 16 | { 17 | Application.EnableVisualStyles(); 18 | Application.SetCompatibleTextRenderingDefault(false); 19 | Application.Run(new Databaseeditor(false)); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /antivirus/Program.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Threading.Tasks; 5 | using System.Windows.Forms; 6 | using InfANT; 7 | 8 | namespace antivirus 9 | { 10 | static class Program 11 | { 12 | /// 13 | /// The main entry point for the application. 14 | /// 15 | [STAThread] 16 | static void Main() 17 | { 18 | Application.EnableVisualStyles(); 19 | Application.SetCompatibleTextRenderingDefault(false); 20 | Application.Run(new LoadingScreen(false)); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /progressBar/prgbar.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 2013 4 | VisualStudioVersion = 12.0.21005.1 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "prgbar", "prgbar\prgbar.csproj", "{D382F98A-55D6-4A02-8553-76A06E792300}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Any CPU = Debug|Any CPU 11 | Release|Any CPU = Release|Any CPU 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {D382F98A-55D6-4A02-8553-76A06E792300}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 15 | {D382F98A-55D6-4A02-8553-76A06E792300}.Debug|Any CPU.Build.0 = Debug|Any CPU 16 | {D382F98A-55D6-4A02-8553-76A06E792300}.Release|Any CPU.ActiveCfg = Release|Any CPU 17 | {D382F98A-55D6-4A02-8553-76A06E792300}.Release|Any CPU.Build.0 = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | EndGlobal 23 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Ivan Semkin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /antivirus/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace InfANT.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /launcher/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace launcher.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "14.0.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /databaseWorker/Properties/Settings.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace databaseworker.Properties { 12 | 13 | 14 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 15 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")] 16 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { 17 | 18 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); 19 | 20 | public static Settings Default { 21 | get { 22 | return defaultInstance; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /progressBar/prgbar/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("prgbar")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("prgbar")] 13 | [assembly: AssemblyCopyright("Copyright © 2016")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("bdcc8c01-ef8d-43a2-8bdc-2d1351c76498")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /progressBar/prgbar/BlueProgressBar.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace prgbar 2 | { 3 | partial class BlueProgressBar 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Component Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | this.SuspendLayout(); 32 | // 33 | // BlueProgressBar 34 | // 35 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 36 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 37 | this.Name = "BlueProgressBar"; 38 | this.Size = new System.Drawing.Size(191, 25); 39 | this.ResumeLayout(false); 40 | 41 | } 42 | 43 | #endregion 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 🚀 Thanks for contributing! 2 | 3 | Below are templates for various types of issues (Bugs and Features) separated by horizontal rules. 4 | Please delete whichever sections of the template you do not need. 5 | 6 | # Bugs 7 | 8 | If you find a bug, please submit a pull request with a failing test case displaying the bug or just create an issue with as much information as possible. 9 | 10 | ------------------------------------------------------------------------------- 11 | 12 | # Feature, Enhancement, or Optimization 13 | 14 | # Name of Feature 15 | 16 | * Author(s): [Developer](https://github.com/) 17 | 18 | ## Introduction 19 | 20 | A short description of what the feature is. Try to keep it to a single-paragraph "elevator pitch" so the reader understands what problem this proposal is addressing. 21 | 22 | ## Motivation 23 | 24 | Describe why this feature is needed and how it can improve InfANT. 25 | 26 | ## Proposed solution 27 | 28 | Describe how exactly the solution should be implemented (with examples). 29 | 30 | ## Code snippets 31 | 32 | Give us an idea of what this new idea will look like in code. The more code snippets you provide here, the easier it will be for the community to understand what your idea is. 33 | 34 | ## Impact 35 | 36 | Describe the impact that this change will have on existing code. What may and what will stop working? (I.E Will previous logs be compatible?) 37 | 38 | ## Alternatives considered 39 | 40 | Describe alternative approaches to addressing the same problem, and why you chose this approach instead. -------------------------------------------------------------------------------- /launcher/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("InfANT's Launcher")] 9 | [assembly: AssemblyDescription("The launcher for InfANT.")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Launcher")] 13 | [assembly: AssemblyCopyright("")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("80c4952f-cc55-46dd-94a2-2e3607f88b35")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /databaseWorker/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("InfANT's Database Editor")] 9 | [assembly: AssemblyDescription("The Database Editor for InfANT")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("Database Editor")] 13 | [assembly: AssemblyCopyright("")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("ee5978ee-cfe4-4ecb-a92a-4ff79ad3eb5c")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /antivirus/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using System.Resources; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("InfANT")] 10 | [assembly: AssemblyDescription("An antivirus made by a group of Russian students")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("InfANT")] 14 | [assembly: AssemblyCopyright("")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | 18 | // Setting ComVisible to false makes the types in this assembly not visible 19 | // to COM components. If you need to access a type in this assembly from 20 | // COM, set the ComVisible attribute to true on that type. 21 | [assembly: ComVisible(false)] 22 | 23 | // The following GUID is for the ID of the typelib if this project is exposed to COM 24 | [assembly: Guid("c7d8e3a2-eabc-4a46-82e6-0608bbcf3567")] 25 | 26 | // Version information for an assembly consists of the following four values: 27 | // 28 | // Major Version 29 | // Minor Version 30 | // Build Number 31 | // Revision 32 | // 33 | // You can specify all the values or you can default the Build and Revision Numbers 34 | // by using the '*' as shown below: 35 | // [assembly: AssemblyVersion("1.0.*")] 36 | [assembly: AssemblyVersion("2.2.0.0")] 37 | [assembly: AssemblyFileVersion("2.2.0.0")] 38 | [assembly: NeutralResourcesLanguageAttribute("en")] 39 | -------------------------------------------------------------------------------- /antivirus.sln: -------------------------------------------------------------------------------- 1 | 2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 14 4 | VisualStudioVersion = 14.0.25420.1 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "antiVirus", "antivirus\InfANT.csproj", "{28DEB622-909B-4ABC-807B-6A14653F5C04}" 7 | EndProject 8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "databaseWorker", "databaseWorker\databaseWorker.csproj", "{19AE6140-48DB-4770-9B67-B93F7CFB278B}" 9 | EndProject 10 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "launcher", "launcher\launcher.csproj", "{E95F0E06-2004-47E4-A119-3D72A8E39402}" 11 | EndProject 12 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "prgBar", "progressBar\prgbar\prgBar.csproj", "{D382F98A-55D6-4A02-8553-76A06E792300}" 13 | EndProject 14 | Global 15 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 16 | Debug|Any CPU = Debug|Any CPU 17 | Release|Any CPU = Release|Any CPU 18 | EndGlobalSection 19 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 20 | {28DEB622-909B-4ABC-807B-6A14653F5C04}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 21 | {28DEB622-909B-4ABC-807B-6A14653F5C04}.Debug|Any CPU.Build.0 = Debug|Any CPU 22 | {28DEB622-909B-4ABC-807B-6A14653F5C04}.Release|Any CPU.ActiveCfg = Release|Any CPU 23 | {28DEB622-909B-4ABC-807B-6A14653F5C04}.Release|Any CPU.Build.0 = Release|Any CPU 24 | {19AE6140-48DB-4770-9B67-B93F7CFB278B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 25 | {19AE6140-48DB-4770-9B67-B93F7CFB278B}.Debug|Any CPU.Build.0 = Debug|Any CPU 26 | {19AE6140-48DB-4770-9B67-B93F7CFB278B}.Release|Any CPU.ActiveCfg = Release|Any CPU 27 | {19AE6140-48DB-4770-9B67-B93F7CFB278B}.Release|Any CPU.Build.0 = Release|Any CPU 28 | {E95F0E06-2004-47E4-A119-3D72A8E39402}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 29 | {E95F0E06-2004-47E4-A119-3D72A8E39402}.Debug|Any CPU.Build.0 = Debug|Any CPU 30 | {E95F0E06-2004-47E4-A119-3D72A8E39402}.Release|Any CPU.ActiveCfg = Release|Any CPU 31 | {E95F0E06-2004-47E4-A119-3D72A8E39402}.Release|Any CPU.Build.0 = Release|Any CPU 32 | {D382F98A-55D6-4A02-8553-76A06E792300}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 33 | {D382F98A-55D6-4A02-8553-76A06E792300}.Debug|Any CPU.Build.0 = Debug|Any CPU 34 | {D382F98A-55D6-4A02-8553-76A06E792300}.Release|Any CPU.ActiveCfg = Release|Any CPU 35 | {D382F98A-55D6-4A02-8553-76A06E792300}.Release|Any CPU.Build.0 = Release|Any CPU 36 | EndGlobalSection 37 | GlobalSection(SolutionProperties) = preSolution 38 | HideSolutionNode = FALSE 39 | EndGlobalSection 40 | EndGlobal 41 | -------------------------------------------------------------------------------- /databaseWorker/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace databaseworker.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// Returns the cached ResourceManager instance used by this class. 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("databaseworker.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// Overrides the current thread's CurrentUICulture property for all 51 | /// resource lookups using this strongly typed resource class. 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /progressBar/prgbar/prgBar.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {D382F98A-55D6-4A02-8553-76A06E792300} 8 | Library 9 | Properties 10 | prgbar 11 | prgbar 12 | v4.5 13 | 512 14 | 15 | 16 | true 17 | full 18 | false 19 | bin\Debug\ 20 | DEBUG;TRACE 21 | prompt 22 | 4 23 | 24 | 25 | pdbonly 26 | true 27 | bin\Release\ 28 | TRACE 29 | prompt 30 | 4 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | UserControl 46 | 47 | 48 | BlueProgressBar.cs 49 | 50 | 51 | 52 | 53 | 54 | 55 | BlueProgressBar.cs 56 | 57 | 58 | 59 | 66 | -------------------------------------------------------------------------------- /antivirus/loadingscreen.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace InfANT 2 | { 3 | partial class LoadingScreen 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LoadingScreen)); 32 | this.lab_Wait = new System.Windows.Forms.Label(); 33 | this.ProgressLoading = new prgbar.BlueProgressBar(); 34 | this.SuspendLayout(); 35 | // 36 | // lab_Wait 37 | // 38 | resources.ApplyResources(this.lab_Wait, "lab_Wait"); 39 | this.lab_Wait.Name = "lab_Wait"; 40 | // 41 | // ProgressLoading 42 | // 43 | resources.ApplyResources(this.ProgressLoading, "ProgressLoading"); 44 | this.ProgressLoading.BackColor = System.Drawing.Color.WhiteSmoke; 45 | this.ProgressLoading.Maximum = 100; 46 | this.ProgressLoading.Minimum = 0; 47 | this.ProgressLoading.Name = "ProgressLoading"; 48 | this.ProgressLoading.ProgressBarColor = System.Drawing.Color.DodgerBlue; 49 | this.ProgressLoading.Value = 0; 50 | // 51 | // LoadingScreen 52 | // 53 | resources.ApplyResources(this, "$this"); 54 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 55 | this.BackColor = System.Drawing.Color.White; 56 | this.Controls.Add(this.ProgressLoading); 57 | this.Controls.Add(this.lab_Wait); 58 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow; 59 | this.Name = "LoadingScreen"; 60 | this.ShowIcon = false; 61 | this.ShowInTaskbar = false; 62 | this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.loadingscreen_FormClosing); 63 | this.Load += new System.EventHandler(this.loadingscreen_Load); 64 | this.Shown += new System.EventHandler(this.loadingscreen_Shown); 65 | this.ResumeLayout(false); 66 | 67 | } 68 | 69 | #endregion 70 | 71 | private System.Windows.Forms.Label lab_Wait; 72 | private prgbar.BlueProgressBar ProgressLoading; 73 | } 74 | } 75 | 76 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # InfANT 2 | **InfANT** is an open-source antivirus written in C#. It's distributed under the MIT license. 3 | 4 | The **goal** of this project is to make a free antivirus driven by the community that can be easily changed to work in closed environments. 5 | 6 | It has **no** databases included, and at this point, in can be used only as a basis for more complicated projects. 7 | 8 | Currently, it has 2 languages: English (main) and Russian. If you want to - you can translate LanguageResources.resx and pull it to my fork. 9 | 10 | English version works a bit faster, as it has less text to process. 11 | 12 | ## 🦄 Build status 13 | Build status for **main** fork: [![Build Status](https://img.shields.io/travis/vanyasem/InfANT/master.svg?style=flat-square)](https://travis-ci.org/vanyasem/InfANT) 14 | 15 | Build status for **unstable** fork: [![Build Status](https://img.shields.io/travis/vanyasem/InfANT/unstable.svg?style=flat-square)](https://travis-ci.org/vanyasem/InfANT) 16 | 17 | UNSTABLE FORK IS **NOT TESTED** AT ALL OR TESTED PARTIALLY. 18 | USE IT AT **YOUR OWN RISK**. 19 | 20 | Unstable builds are not published and are not included in the changelog. *Beware!* Version number of those matches the version number of a stable build they were built on. 21 | 22 | 23 | ## 📖 Documentation 24 | Full documentation will be available on Wiki after 3.0 is released. 25 | 26 | 27 | ## 🔧 Compatibility 28 | It was **not** tested on systems other than Windows (7, 8, 8.1, 10) and it probably will never be. 29 | 30 | --- 31 | 32 | ## 🚀 Contributing [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com) 33 | All developers should feel welcome and encouraged to contribute to InfANT, see our [getting started](/Documents/CONTRIBUTING.md) document here to get involved. 34 | 35 | If you've never contributed to an OSS project before, here's a [getting started](https://akrabat.com/the-beginners-guide-to-contributing-to-a-github-project/) to get you started. 36 | 37 | To contribute a **feature or idea** to IntANT, submit an issue and fill in the template. If the request is approved, you or one of the members of the community can start working on it. 38 | 39 | If you find a **bug**, please submit a pull request with a failing test case displaying the bug or create an issue. 40 | 41 | Pull requests without adequate testing may be delayed. Please add tests alongside your pull requests. 42 | 43 | 44 | ## 🌓 Progress 45 | Changelog lies [here](http://pastebin.com/8Gfq7Di4). 46 | 47 | Overall progress will be published later. 48 | 49 | 50 | ## 📃 Futurelog 51 | * **3.0** "Light Mode" (easy on resources) 52 | * **3.0** Optimized scanning on high-end machines 53 | * **3.0** Database entries 54 | * **3.0** GUI and libs separated in 2 different packages (so it's easy to merge/fork it into something else) 55 | * **3.0** Improved UI 56 | * **3.0** Documentation included 57 | * An installer (currently it's only portable) 58 | * Scan every file in archives w/o password 59 | * Scanning integrated into context menu 60 | * Real-time protection (detect new drives, detect opened binaries, etc.) 61 | * Binary analysis 62 | * ?Start with Windows 63 | 64 | 65 | --- 66 | *Inf* stands for 'Infinity' & *ANT* stands for 'Antivirus' 67 | -------------------------------------------------------------------------------- /launcher/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace launcher.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// Returns the cached ResourceManager instance used by this class. 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("launcher.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// Overrides the current thread's CurrentUICulture property for all 51 | /// resource lookups using this strongly typed resource class. 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | 63 | /// 64 | /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). 65 | /// 66 | internal static System.Drawing.Icon icoExplr { 67 | get { 68 | object obj = ResourceManager.GetObject("icoExplr", resourceCulture); 69 | return ((System.Drawing.Icon)(obj)); 70 | } 71 | } 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /antivirus/databaseworker.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {19AE6140-48DB-4770-9B67-B93F7CFB278B} 8 | WinExe 9 | Properties 10 | databaseworker 11 | databaseworker 12 | v4.5 13 | 512 14 | 15 | 16 | AnyCPU 17 | true 18 | full 19 | false 20 | bin\Debug\ 21 | DEBUG;TRACE 22 | prompt 23 | 4 24 | 25 | 26 | AnyCPU 27 | pdbonly 28 | true 29 | bin\Release\ 30 | TRACE 31 | prompt 32 | 4 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | Form 49 | 50 | 51 | Form1.cs 52 | 53 | 54 | 55 | 56 | Form1.cs 57 | 58 | 59 | ResXFileCodeGenerator 60 | Resources.Designer.cs 61 | Designer 62 | 63 | 64 | True 65 | Resources.resx 66 | 67 | 68 | SettingsSingleFileGenerator 69 | Settings.Designer.cs 70 | 71 | 72 | True 73 | Settings.settings 74 | True 75 | 76 | 77 | 78 | 79 | 80 | 81 | 88 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ## Ignore Visual Studio temporary files, build results, and 2 | ## files generated by popular Visual Studio add-ons. 3 | 4 | # User-specific files 5 | *.suo 6 | *.user 7 | *.userosscache 8 | *.sln.docstates 9 | 10 | # Build results 11 | [Dd]ebug/ 12 | [Dd]ebugPublic/ 13 | [Rr]elease/ 14 | [Rr]eleases/ 15 | x64/ 16 | x86/ 17 | build/ 18 | bld/ 19 | [Bb]in/ 20 | [Oo]bj/ 21 | 22 | # Roslyn cache directories 23 | *.ide/ 24 | 25 | # MSTest test Results 26 | [Tt]est[Rr]esult*/ 27 | [Bb]uild[Ll]og.* 28 | 29 | #NUNIT 30 | *.VisualState.xml 31 | TestResult.xml 32 | 33 | # Build Results of an ATL Project 34 | [Dd]ebugPS/ 35 | [Rr]eleasePS/ 36 | dlldata.c 37 | 38 | *_i.c 39 | *_p.c 40 | *_i.h 41 | *.ilk 42 | *.meta 43 | *.obj 44 | *.pch 45 | *.pdb 46 | *.pgc 47 | *.pgd 48 | *.rsp 49 | *.sbr 50 | *.tlb 51 | *.tli 52 | *.tlh 53 | *.tmp 54 | *.tmp_proj 55 | *.log 56 | *.vspscc 57 | *.vssscc 58 | .builds 59 | *.pidb 60 | *.svclog 61 | *.scc 62 | 63 | # Chutzpah Test files 64 | _Chutzpah* 65 | 66 | # Visual C++ cache files 67 | ipch/ 68 | *.aps 69 | *.ncb 70 | *.opensdf 71 | *.sdf 72 | *.cachefile 73 | 74 | # Visual Studio profiler 75 | *.psess 76 | *.vsp 77 | *.vspx 78 | 79 | # TFS 2012 Local Workspace 80 | $tf/ 81 | 82 | # Guidance Automation Toolkit 83 | *.gpState 84 | 85 | # ReSharper is a .NET coding add-in 86 | _ReSharper*/ 87 | *.[Rr]e[Ss]harper 88 | *.DotSettings.user 89 | 90 | # JustCode is a .NET coding addin-in 91 | .JustCode 92 | 93 | # TeamCity is a build add-in 94 | _TeamCity* 95 | 96 | # DotCover is a Code Coverage Tool 97 | *.dotCover 98 | 99 | # NCrunch 100 | _NCrunch_* 101 | .*crunch*.local.xml 102 | 103 | # MightyMoose 104 | *.mm.* 105 | AutoTest.Net/ 106 | 107 | # Web workbench (sass) 108 | .sass-cache/ 109 | 110 | # Installshield output folder 111 | [Ee]xpress/ 112 | 113 | # DocProject is a documentation generator add-in 114 | DocProject/buildhelp/ 115 | DocProject/Help/*.HxT 116 | DocProject/Help/*.HxC 117 | DocProject/Help/*.hhc 118 | DocProject/Help/*.hhk 119 | DocProject/Help/*.hhp 120 | DocProject/Help/Html2 121 | DocProject/Help/html 122 | 123 | # Click-Once directory 124 | publish/ 125 | 126 | # Publish Web Output 127 | *.[Pp]ublish.xml 128 | *.azurePubxml 129 | # TODO: Comment the next line if you want to checkin your web deploy settings 130 | # but database connection strings (with potential passwords) will be unencrypted 131 | *.pubxml 132 | *.publishproj 133 | 134 | # NuGet Packages 135 | *.nupkg 136 | # The packages folder can be ignored because of Package Restore 137 | **/packages/* 138 | # except build/, which is used as an MSBuild target. 139 | !**/packages/build/ 140 | # If using the old MSBuild-Integrated Package Restore, uncomment this: 141 | #!**/packages/repositories.config 142 | 143 | # Windows Azure Build Output 144 | csx/ 145 | *.build.csdef 146 | 147 | # Windows Store app package directory 148 | AppPackages/ 149 | 150 | # Others 151 | sql/ 152 | *.Cache 153 | ClientBin/ 154 | [Ss]tyle[Cc]op.* 155 | ~$* 156 | *~ 157 | *.dbmdl 158 | *.dbproj.schemaview 159 | *.pfx 160 | *.publishsettings 161 | node_modules/ 162 | 163 | # RIA/Silverlight projects 164 | Generated_Code/ 165 | 166 | # Backup & report files from converting an old project file 167 | # to a newer Visual Studio version. Backup files are not needed, 168 | # because we have git ;-) 169 | _UpgradeReport_Files/ 170 | Backup*/ 171 | UpgradeLog*.XML 172 | UpgradeLog*.htm 173 | 174 | # SQL Server files 175 | *.mdf 176 | *.ldf 177 | 178 | # Business Intelligence projects 179 | *.rdl.data 180 | *.bim.layout 181 | *.bim_*.settings 182 | 183 | # Microsoft Fakes 184 | FakesAssemblies/ 185 | 186 | # ========================= 187 | # Operating System Files 188 | # ========================= 189 | 190 | # OSX 191 | # ========================= 192 | 193 | .DS_Store 194 | .AppleDouble 195 | .LSOverride 196 | 197 | # Thumbnails 198 | ._* 199 | 200 | # Files that might appear on external disk 201 | .Spotlight-V100 202 | .Trashes 203 | 204 | # Directories potentially created on remote AFP share 205 | .AppleDB 206 | .AppleDesktop 207 | Network Trash Folder 208 | Temporary Items 209 | .apdisk 210 | 211 | # Windows 212 | # ========================= 213 | 214 | # Windows image file caches 215 | Thumbs.db 216 | ehthumbs.db 217 | 218 | # Folder config file 219 | Desktop.ini 220 | 221 | # Recycle Bin used on file shares 222 | $RECYCLE.BIN/ 223 | 224 | # Windows Installer files 225 | *.cab 226 | *.msi 227 | *.msm 228 | *.msp 229 | 230 | # Windows shortcuts 231 | *.lnk 232 | -------------------------------------------------------------------------------- /antivirus/FullScan.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows.Forms; 3 | 4 | namespace InfANT 5 | { 6 | internal class FullScan : Scan 7 | { 8 | private static int ScannedFull 9 | { 10 | get { return _scannedFull; } //determines how many files were scanned by the fast scanner, function, triggers on change 11 | set 12 | { 13 | _scannedFull = value; 14 | MainRef.labScannedFullNum.Invoke((new MethodInvoker(delegate { MainRef.labScannedFullNum.Text = value + @"/" + _overallFull; }))); 15 | } 16 | } 17 | private static int _scannedFull; //determines how many files were scanned by the fast scanner, var 18 | private static int _filesCountFull; //temp filescount, used only in CountFiles. "overall" is used in other places. I don't remember why, but, I guess, there's a reason for this 19 | private static int _overallFull; 20 | protected override void OnCount() 21 | { 22 | _filesCountFull++; //increase the temp filescount with every file 23 | _overallFull = _filesCountFull; //as we just changed the temp overall files count, we have to set it to the global files count 24 | 25 | MainRef.labScannedFullNum.Invoke( //change the count label 26 | new MethodInvoker(delegate { MainRef.labScannedFullNum.Text = ScannedFull + @"/" + _overallFull; })); 27 | 28 | MainRef.progressFull.Invoke( //set the maximum progressbar value to max files 29 | new MethodInvoker(delegate { MainRef.progressFull.Maximum = _overallFull; })); 30 | 31 | MainRef.progressFull.Invoke( //if the scan is running at the same this will prevent blinking of a prbar 32 | new MethodInvoker(delegate { MainRef.progressFull.Value = ScannedFull; })); 33 | 34 | MainRef.progressFull.Invalidate(); 35 | } 36 | 37 | protected override void ScanWork() 38 | { 39 | if (_scanningWorker.CancellationPending) return; 40 | TreeScan(MainRef.FullDrivePath); 41 | if (_scanningWorker.CancellationPending) return; 42 | MainRef.Loadings.NotifyIcon1.ShowBalloonTip(500, LanguageResources.the_scan_finished, $"{LanguageResources.LOGS_scan_was_finished_scanned} {ScannedFull} {LanguageResources.LOGS_of} {_overallFull} {LanguageResources.LOGS_files}.", ToolTipIcon.Info); 43 | } 44 | 45 | protected override void CountWork() 46 | { 47 | CountFiles(MainRef.FullDrivePath); 48 | } 49 | 50 | protected override void HandleErrorDetection(Exception e) 51 | { 52 | MainRef.LogIt(3, e.Message, 1); 53 | } 54 | 55 | protected override void HandleVirusDetection(string filePath) 56 | { 57 | MainRef.LogIt(1, filePath, LanguageResources.infected, 1); 58 | MainRef.Infected = true; 59 | ScannedStep(); 60 | } 61 | 62 | protected override void HandleSuspDetection(string filePath) 63 | { 64 | MainRef.LogIt(2, filePath, LanguageResources.susp, 1); 65 | if (MainRef.Infected != true) 66 | MainRef.Infected = null; 67 | ScannedStep(); 68 | } 69 | 70 | protected override void HandleOKDetection(string filePath) 71 | { 72 | MainRef.LogIt(4, filePath, LanguageResources.LOGS_is_clear, 1); 73 | ScannedStep(); 74 | } 75 | 76 | protected override void AfterAbortActions() 77 | { 78 | MainRef.Loadings.CreateLogEntry(4, $"(E{LanguageResources.LOGS_drive_scan_aborted})|{ScannedFull}-{_overallFull}|"); 79 | MainRef.LogIt(0, LanguageResources.LOGS_drive_scan_aborted, 1); 80 | MainRef.Loadings.timerSaveLogs_Tick(null, null); 81 | 82 | MainRef.btnFullScan.Invoke( 83 | new MethodInvoker( 84 | delegate 85 | { 86 | MainRef.btnFullScan.Enabled = true; MainRef.btnFullScan.Text = LanguageResources.IFBTN_SCAN; })); 87 | } 88 | 89 | private static void ScannedStep() 90 | { 91 | ScannedFull++; //increases the OVERALL advanced folder scanned count 92 | MainRef.progressFull.Invoke(new MethodInvoker(delegate { MainRef.progressFull.PerformStep(); })); 93 | } 94 | 95 | public void Reset() 96 | { 97 | MainRef.progressFull.Maximum = _overallFull; //overall amount of files 98 | MainRef.progressFull.Value = 0; 99 | ScannedFull = 0; //sets the amount of scanned files by the fast scanner to zero 100 | _filesCountFull = 0; 101 | _overallFull = 0; 102 | } 103 | } 104 | } 105 | -------------------------------------------------------------------------------- /databaseWorker/databaseWorker.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {19AE6140-48DB-4770-9B67-B93F7CFB278B} 8 | WinExe 9 | Properties 10 | databaseworker 11 | databaseeditor 12 | v4.5 13 | 512 14 | 15 | 16 | AnyCPU 17 | true 18 | full 19 | false 20 | bin\Debug\ 21 | DEBUG;TRACE 22 | prompt 23 | 4 24 | 25 | 26 | AnyCPU 27 | pdbonly 28 | true 29 | bin\Release\ 30 | TRACE 31 | prompt 32 | 4 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | Form 49 | 50 | 51 | databaseeditor.cs 52 | 53 | 54 | True 55 | True 56 | LanguageResources.resx 57 | 58 | 59 | 60 | 61 | databaseeditor.cs 62 | 63 | 64 | databaseeditor.cs 65 | 66 | 67 | ResXFileCodeGenerator 68 | LanguageResources.Designer.cs 69 | 70 | 71 | 72 | ResXFileCodeGenerator 73 | Resources.Designer.cs 74 | Designer 75 | 76 | 77 | True 78 | Resources.resx 79 | True 80 | 81 | 82 | SettingsSingleFileGenerator 83 | Settings.Designer.cs 84 | 85 | 86 | True 87 | Settings.settings 88 | True 89 | 90 | 91 | 92 | 93 | 94 | 95 | 102 | -------------------------------------------------------------------------------- /antivirus/FastScan.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Windows.Forms; 3 | 4 | namespace InfANT 5 | { 6 | internal class FastScan: Scan 7 | { 8 | private static int ScannedFast 9 | { 10 | get { return _scannedFast; } //determines how many files were scanned by the fast scanner, function, triggers on change 11 | set 12 | { 13 | _scannedFast = value; 14 | MainRef.labScannedFastNum.Invoke((new MethodInvoker(delegate { MainRef.labScannedFastNum.Text = value + @"/" + _overallFast; }))); 15 | } 16 | } 17 | private static int _scannedFast; //determines how many files were scanned by the fast scanner, var 18 | private static int _filesCountFast; //temp filescount, used only in CountFiles. "overall" is used in other places. I don't remember why, but, I guess, there's a reason for this 19 | private static int _overallFast; 20 | protected override void OnCount() 21 | { 22 | _filesCountFast++; //increase the temp filescount with every file 23 | _overallFast = _filesCountFast; //as we just changed the temp overall files count, we have to set it to the global files count 24 | 25 | MainRef.labScannedFastNum.Invoke( //change the count label 26 | new MethodInvoker(delegate { MainRef.labScannedFastNum.Text = ScannedFast + @"/" + _overallFast; })); 27 | 28 | MainRef.progressFast.Invoke( //set the maximum progressbar value to max files 29 | new MethodInvoker(delegate { MainRef.progressFast.Maximum = _overallFast; })); 30 | 31 | MainRef.progressFast.Invoke( //if the scan is running at the same this will prevent prbar glitching 32 | new MethodInvoker(delegate { MainRef.progressFast.Value = ScannedFast; })); 33 | 34 | MainRef.progressFast.Invalidate(); 35 | } 36 | 37 | protected override void ScanWork() 38 | { 39 | if (_scanningWorker.CancellationPending) return; 40 | TreeScan(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)); 41 | if (_scanningWorker.CancellationPending) return; 42 | TreeScan(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)); 43 | if (_scanningWorker.CancellationPending) return; 44 | TreeScan(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)); 45 | if (_scanningWorker.CancellationPending) return; 46 | TreeScan(Environment.GetFolderPath(Environment.SpecialFolder.InternetCache)); 47 | if (_scanningWorker.CancellationPending) return; 48 | MainRef.Loadings.NotifyIcon1.ShowBalloonTip(500, LanguageResources.the_scan_finished, $"{LanguageResources.LOGS_scan_was_finished_scanned} {ScannedFast} {LanguageResources.LOGS_of} {_overallFast} {LanguageResources.LOGS_files}.", ToolTipIcon.Info); 49 | } 50 | 51 | protected override void CountWork() 52 | { 53 | CountFiles(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)); 54 | CountFiles(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)); 55 | CountFiles(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)); 56 | //CountFiles(Environment.GetFolderPath(Environment.SpecialFolder.Startup)); 57 | //TODO you are supposed to scan autorun. 58 | CountFiles(Environment.GetFolderPath(Environment.SpecialFolder.InternetCache)); 59 | } 60 | 61 | protected override void HandleErrorDetection(Exception e) 62 | { 63 | MainRef.LogIt(3, e.Message, 0); 64 | } 65 | 66 | protected override void HandleVirusDetection(string filePath) 67 | { 68 | MainRef.LogIt(1, filePath, LanguageResources.infected, 0); 69 | MainRef.Infected = true; 70 | ScannedStep(); 71 | } 72 | 73 | protected override void HandleSuspDetection(string filePath) 74 | { 75 | MainRef.LogIt(2, filePath, LanguageResources.susp, 0); 76 | if (MainRef.Infected == false) 77 | MainRef.Infected = null; 78 | ScannedStep(); 79 | } 80 | 81 | protected override void HandleOKDetection(string filePath) 82 | { 83 | MainRef.LogIt(4, filePath, LanguageResources.LOGS_is_clear, 0); 84 | ScannedStep(); 85 | } 86 | 87 | protected override void AfterAbortActions() 88 | { 89 | MainRef.Loadings.CreateLogEntry(4, $"(E{LanguageResources.LOGS_fast_scan_aborted})|{ScannedFast}-{_overallFast}|"); 90 | MainRef.LogIt(0, LanguageResources.LOGS_fast_scan_aborted, 0); 91 | MainRef.Loadings.timerSaveLogs_Tick(null, null); 92 | 93 | MainRef.btnFastScan.Invoke( 94 | new MethodInvoker( 95 | delegate 96 | { 97 | MainRef.btnFastScan.Enabled = true; MainRef.btnFastScan.Text = LanguageResources.IFBTN_SCAN; })); 98 | } 99 | 100 | private static void ScannedStep() 101 | { 102 | ScannedFast++; //increases the OVERALL advanced folder scanned count 103 | MainRef.progressFast.Invoke(new MethodInvoker(delegate { MainRef.progressFast.PerformStep(); })); 104 | } 105 | 106 | public void Reset() 107 | { 108 | MainRef.progressFast.Maximum = _overallFast; //overall amount of files 109 | MainRef.progressFast.Value = 0; 110 | ScannedFast = 0; //sets the amount of scanned files by the fast scanner to zero 111 | _filesCountFast = 0; 112 | _overallFast = 0; 113 | } 114 | } 115 | } 116 | -------------------------------------------------------------------------------- /databaseWorker/LanguageResources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | text/microsoft-resx 91 | 92 | 93 | 1.3 94 | 95 | 96 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 97 | 98 | 99 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 100 | 101 | 102 | Select the file you want to add 103 | 104 | 105 | Select the InfANT's installation folder 106 | 107 | 108 | Can't find InfANT in that folder! Try again! 109 | 110 | 111 | Access Denied! Try again! 112 | 113 | 114 | This entry already exists in one of the databases, no need to add it again. 115 | 116 | 117 | Select the file ----------------------> 118 | 119 | 120 | Done! 121 | 122 | 123 | Open "_Launcher.exe" instead! 124 | 125 | -------------------------------------------------------------------------------- /antivirus/Properties/Resources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace InfANT.Properties { 12 | using System; 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class Resources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal Resources() { 33 | } 34 | 35 | /// 36 | /// Returns the cached ResourceManager instance used by this class. 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("InfANT.Properties.Resources", typeof(Resources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// Overrides the current thread's CurrentUICulture property for all 51 | /// resource lookups using this strongly typed resource class. 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | 63 | /// 64 | /// Looks up a localized resource of type System.Drawing.Bitmap. 65 | /// 66 | internal static System.Drawing.Bitmap cls { 67 | get { 68 | object obj = ResourceManager.GetObject("cls", resourceCulture); 69 | return ((System.Drawing.Bitmap)(obj)); 70 | } 71 | } 72 | 73 | /// 74 | /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). 75 | /// 76 | internal static System.Drawing.Icon favicoinfected { 77 | get { 78 | object obj = ResourceManager.GetObject("favicoinfected", resourceCulture); 79 | return ((System.Drawing.Icon)(obj)); 80 | } 81 | } 82 | 83 | /// 84 | /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). 85 | /// 86 | internal static System.Drawing.Icon favicoOK { 87 | get { 88 | object obj = ResourceManager.GetObject("favicoOK", resourceCulture); 89 | return ((System.Drawing.Icon)(obj)); 90 | } 91 | } 92 | 93 | /// 94 | /// Looks up a localized resource of type System.Drawing.Bitmap. 95 | /// 96 | internal static System.Drawing.Bitmap logo { 97 | get { 98 | object obj = ResourceManager.GetObject("logo", resourceCulture); 99 | return ((System.Drawing.Bitmap)(obj)); 100 | } 101 | } 102 | 103 | /// 104 | /// Looks up a localized resource of type System.Drawing.Bitmap. 105 | /// 106 | internal static System.Drawing.Bitmap min { 107 | get { 108 | object obj = ResourceManager.GetObject("min", resourceCulture); 109 | return ((System.Drawing.Bitmap)(obj)); 110 | } 111 | } 112 | 113 | /// 114 | /// Looks up a localized resource of type System.Drawing.Bitmap. 115 | /// 116 | internal static System.Drawing.Bitmap qst { 117 | get { 118 | object obj = ResourceManager.GetObject("qst", resourceCulture); 119 | return ((System.Drawing.Bitmap)(obj)); 120 | } 121 | } 122 | 123 | /// 124 | /// Looks up a localized resource of type System.Drawing.Bitmap. 125 | /// 126 | internal static System.Drawing.Bitmap wave { 127 | get { 128 | object obj = ResourceManager.GetObject("wave", resourceCulture); 129 | return ((System.Drawing.Bitmap)(obj)); 130 | } 131 | } 132 | } 133 | } 134 | -------------------------------------------------------------------------------- /databaseWorker/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | text/microsoft-resx 107 | 108 | 109 | 2.0 110 | 111 | 112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 113 | 114 | 115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | -------------------------------------------------------------------------------- /launcher/launcher.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {E95F0E06-2004-47E4-A119-3D72A8E39402} 8 | WinExe 9 | Properties 10 | launcher 11 | _Launcher 12 | v4.5 13 | 512 14 | 15 | 16 | 17 | AnyCPU 18 | true 19 | full 20 | false 21 | bin\Debug\ 22 | DEBUG;TRACE 23 | prompt 24 | 4 25 | false 26 | 27 | 28 | AnyCPU 29 | pdbonly 30 | true 31 | bin\Release\ 32 | TRACE 33 | prompt 34 | 4 35 | false 36 | 37 | 38 | Resources\icoExplr.ico 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | True 56 | True 57 | LanguageResources.resx 58 | 59 | 60 | True 61 | True 62 | LanguageResources.ru.resx 63 | 64 | 65 | Form 66 | 67 | 68 | launchermain.cs 69 | 70 | 71 | 72 | 73 | ResXFileCodeGenerator 74 | LanguageResources.Designer.cs 75 | 76 | 77 | PublicResXFileCodeGenerator 78 | LanguageResources.ru.Designer.cs 79 | 80 | 81 | launchermain.cs 82 | 83 | 84 | launchermain.cs 85 | 86 | 87 | ResXFileCodeGenerator 88 | Resources.Designer.cs 89 | Designer 90 | 91 | 92 | True 93 | Resources.resx 94 | True 95 | 96 | 97 | SettingsSingleFileGenerator 98 | Settings.Designer.cs 99 | 100 | 101 | True 102 | Settings.settings 103 | True 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | {28deb622-909b-4abc-807b-6a14653f5c04} 112 | InfANT 113 | 114 | 115 | {19ae6140-48db-4770-9b67-b93f7cfb278b} 116 | databaseWorker 117 | 118 | 119 | 120 | 121 | 122 | 123 | 130 | -------------------------------------------------------------------------------- /databaseWorker/LanguageResources.Designer.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // This code was generated by a tool. 4 | // Runtime Version:4.0.30319.42000 5 | // 6 | // Changes to this file may cause incorrect behavior and will be lost if 7 | // the code is regenerated. 8 | // 9 | //------------------------------------------------------------------------------ 10 | 11 | namespace databaseworker { 12 | using System; 13 | 14 | 15 | /// 16 | /// A strongly-typed resource class, for looking up localized strings, etc. 17 | /// 18 | // This class was auto-generated by the StronglyTypedResourceBuilder 19 | // class via a tool like ResGen or Visual Studio. 20 | // To add or remove a member, edit your .ResX file then rerun ResGen 21 | // with the /str option, or rebuild your VS project. 22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] 23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] 24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] 25 | internal class LanguageResources { 26 | 27 | private static global::System.Resources.ResourceManager resourceMan; 28 | 29 | private static global::System.Globalization.CultureInfo resourceCulture; 30 | 31 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] 32 | internal LanguageResources() { 33 | } 34 | 35 | /// 36 | /// Returns the cached ResourceManager instance used by this class. 37 | /// 38 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 39 | internal static global::System.Resources.ResourceManager ResourceManager { 40 | get { 41 | if (object.ReferenceEquals(resourceMan, null)) { 42 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("databaseworker.LanguageResources", typeof(LanguageResources).Assembly); 43 | resourceMan = temp; 44 | } 45 | return resourceMan; 46 | } 47 | } 48 | 49 | /// 50 | /// Overrides the current thread's CurrentUICulture property for all 51 | /// resource lookups using this strongly typed resource class. 52 | /// 53 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] 54 | internal static global::System.Globalization.CultureInfo Culture { 55 | get { 56 | return resourceCulture; 57 | } 58 | set { 59 | resourceCulture = value; 60 | } 61 | } 62 | 63 | /// 64 | /// Looks up a localized string similar to Access Denied! Try again!. 65 | /// 66 | internal static string access_denied { 67 | get { 68 | return ResourceManager.GetString("access_denied", resourceCulture); 69 | } 70 | } 71 | 72 | /// 73 | /// Looks up a localized string similar to Can't find InfANT in that folder! Try again!. 74 | /// 75 | internal static string cant_find_infant_in_folder { 76 | get { 77 | return ResourceManager.GetString("cant_find_infant_in_folder", resourceCulture); 78 | } 79 | } 80 | 81 | /// 82 | /// Looks up a localized string similar to Done!. 83 | /// 84 | internal static string done { 85 | get { 86 | return ResourceManager.GetString("done", resourceCulture); 87 | } 88 | } 89 | 90 | /// 91 | /// Looks up a localized string similar to Open "_Launcher.exe" instead!. 92 | /// 93 | internal static string open_launcher_instead { 94 | get { 95 | return ResourceManager.GetString("open_launcher_instead", resourceCulture); 96 | } 97 | } 98 | 99 | /// 100 | /// Looks up a localized string similar to Select the file you want to add. 101 | /// 102 | internal static string select_file { 103 | get { 104 | return ResourceManager.GetString("select_file", resourceCulture); 105 | } 106 | } 107 | 108 | /// 109 | /// Looks up a localized string similar to Select the file ---------------------->. 110 | /// 111 | internal static string select_file_text { 112 | get { 113 | return ResourceManager.GetString("select_file_text", resourceCulture); 114 | } 115 | } 116 | 117 | /// 118 | /// Looks up a localized string similar to Select the InfANT's installation folder. 119 | /// 120 | internal static string select_installation_folder { 121 | get { 122 | return ResourceManager.GetString("select_installation_folder", resourceCulture); 123 | } 124 | } 125 | 126 | /// 127 | /// Looks up a localized string similar to This entry already exists in one of the databases, no need to add it again.. 128 | /// 129 | internal static string this_hash_already_exists { 130 | get { 131 | return ResourceManager.GetString("this_hash_already_exists", resourceCulture); 132 | } 133 | } 134 | } 135 | } 136 | -------------------------------------------------------------------------------- /progressBar/prgbar/BlueProgressBar.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | -------------------------------------------------------------------------------- /antivirus/loadingscreen.ru.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | Выполняется загрузка InfANT. Пожалуйста, подождите! 122 | 123 | -------------------------------------------------------------------------------- /launcher/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 122 | ..\Resources\icoExplr.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 123 | 124 | -------------------------------------------------------------------------------- /antivirus/Scan.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.ComponentModel; 3 | using System.Globalization; 4 | using System.IO; 5 | using System.Threading; 6 | using System.Windows.Forms; 7 | 8 | namespace InfANT 9 | { 10 | internal class Scan 11 | { 12 | public static Main MainRef; 13 | public static CultureInfo CurrentCultureInfo; 14 | 15 | private readonly BackgroundWorker _filesCountingWorker = new BackgroundWorker(); 16 | protected readonly BackgroundWorker _scanningWorker = new BackgroundWorker(); 17 | 18 | ///Starts both scanning and counting workers. 19 | ///CountWork and ScanWork should be overridden with actual actions. 20 | ///You MUST call InitializeWorkers() before calling start. 21 | public void Start() 22 | { 23 | _filesCountingWorker.RunWorkerAsync(); 24 | _scanningWorker.RunWorkerAsync(); 25 | MainRef.IsScanning = true; 26 | } 27 | 28 | ///Stops both scanning and counting workers. 29 | ///AfterAbortActions() should be overridden with actual actions. 30 | ///You MUST call InitializeWorkers() before calling abort. 31 | public void Abort() 32 | { 33 | _scanningWorker.CancelAsync(); 34 | _filesCountingWorker.CancelAsync(); 35 | } 36 | 37 | protected virtual void CountWork() { } //Should be overridden in a subclass 38 | protected virtual void ScanWork() { } 39 | public void InitializeWorkers() 40 | { 41 | _filesCountingWorker.WorkerSupportsCancellation = true; 42 | _filesCountingWorker.DoWork += (sender, args) => 43 | { 44 | if (_filesCountingWorker.CancellationPending) return; 45 | CountWork(); 46 | }; 47 | 48 | _filesCountingWorker.RunWorkerCompleted += (sender, args) => 49 | { 50 | //AfterAbort(); 51 | if (args.Error != null) // if an exception occurred during DoWork, 52 | MessageBox.Show(args.Error.ToString()); //TODO Proper logging 53 | }; 54 | 55 | _scanningWorker.WorkerSupportsCancellation = true; 56 | _scanningWorker.DoWork += (sender, args) => 57 | { 58 | if (_scanningWorker.CancellationPending) return; 59 | ScanWork(); 60 | }; 61 | 62 | _scanningWorker.RunWorkerCompleted += (sender, args) => 63 | { 64 | AfterAbort(); 65 | if (args.Error != null) // if an exception occurred during DoWork, 66 | MessageBox.Show(args.Error.ToString()); //TODO Proper logging 2 67 | }; 68 | } 69 | 70 | protected virtual void OnCount() { } //Should be overridden in a subclass 71 | protected void CountFiles(string dir2) 72 | { 73 | try 74 | { 75 | foreach (string file in Directory.GetFiles(dir2)) //gets all files from the folder 76 | { 77 | if (_filesCountingWorker.CancellationPending) return; 78 | OnCount(); 79 | } 80 | } 81 | catch 82 | { /*return;*/ } //TODO proper handling 83 | 84 | try 85 | { 86 | foreach (string dir in Directory.GetDirectories(dir2)) //gets all folders from the folder and does the same for all of them 87 | { 88 | if (_scanningWorker.CancellationPending) return; 89 | CountFiles(dir); 90 | } 91 | } 92 | catch 93 | { /*return;*/ } //TODO proper handling 2 94 | } 95 | 96 | protected virtual void AfterAbortActions() { } 97 | private void AfterAbort() 98 | { 99 | AfterAbortActions(); 100 | MainRef.IsScanning = false; 101 | MainRef.EnableEverything(); 102 | } 103 | 104 | private static void SetThreadsCulture(Thread thread) 105 | { 106 | try 107 | { 108 | thread.CurrentCulture = CurrentCultureInfo; 109 | thread.CurrentUICulture = CurrentCultureInfo; 110 | } 111 | catch 112 | { /* ignored */ } //TODO handlers 113 | } 114 | 115 | protected virtual void HandleVirusDetection(string filePath) { } //Should be overridden in a subclass 116 | protected virtual void HandleSuspDetection(string filePath) { } 117 | protected virtual void HandleOKDetection(string filePath) { } 118 | protected virtual void HandleErrorDetection(Exception e) { } 119 | protected void TreeScan(string folder) //wheretopass determines where should LogIt(whichlog,text,whichscan) pass it. 120 | { //Wheretopass determines which scan is used. See more at the LogIt definition. 121 | SetThreadsCulture(Thread.CurrentThread); 122 | try 123 | { 124 | foreach (string path in Directory.GetFiles(folder)) //gets all files' filenames from the folder 125 | { 126 | if (_scanningWorker.CancellationPending) return; 127 | string temphash = MainRef.GetSHA1(path); 128 | if (MainRef.Hashes.Contains(temphash)) //checks if this hash exists, should be probably replaced, too slow 129 | { 130 | HandleVirusDetection(path); 131 | } 132 | else 133 | { 134 | if (MainRef.SuspHashes.Contains(temphash)) //checks if this hash exists, should be probably replaced, too slow 135 | { 136 | HandleSuspDetection(path); 137 | } 138 | else 139 | { 140 | if (_scanningWorker.CancellationPending) return; 141 | HandleOKDetection(path); 142 | } 143 | } 144 | } 145 | } 146 | catch (ThreadAbortException) //we don't want an "thread terminated" exception to log (coz we do it by ourselves) so we check for that 147 | { return; } 148 | catch (Exception e) 149 | { 150 | HandleErrorDetection(e); 151 | } 152 | 153 | try 154 | { 155 | foreach (string dir in Directory.GetDirectories(folder)) //gets all folders from the folder and does the same for all of them 156 | { 157 | if (_scanningWorker.CancellationPending) return; 158 | TreeScan(dir); 159 | } 160 | } 161 | catch (ThreadAbortException) { /* we don't want an "thread terminated" exception to log (coz we do it by ourselves) so we check for that */ } 162 | catch (Exception e) 163 | { 164 | HandleErrorDetection(e); 165 | } 166 | } 167 | } 168 | } 169 | -------------------------------------------------------------------------------- /progressBar/prgbar/BlueProgressBar.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Drawing; 5 | using System.Data; 6 | using System.Linq; 7 | using System.Text; 8 | using System.Threading.Tasks; 9 | using System.Windows.Forms; 10 | 11 | namespace prgbar 12 | { 13 | public partial class BlueProgressBar: UserControl 14 | { 15 | public BlueProgressBar() 16 | { 17 | InitializeComponent(); 18 | } 19 | 20 | int min = 0; // Minimum value for progress range 21 | int max = 100; // Maximum value for progress range 22 | int val = 0; // Current progress 23 | Color BarColor = Color.Blue; // Color of progress meter 24 | 25 | protected override void OnResize(EventArgs e) 26 | { 27 | // Invalidate the control to get a repaint. 28 | this.Invalidate(); 29 | } 30 | 31 | protected override void OnPaint(PaintEventArgs e) 32 | { 33 | Graphics g = e.Graphics; 34 | SolidBrush brush = new SolidBrush(BarColor); 35 | float percent = (float)(val - min) / (float)(max - min); 36 | Rectangle rect = this.ClientRectangle; 37 | 38 | // Calculate area for drawing the progress. 39 | rect.Width = (int)((float)rect.Width * percent); 40 | 41 | // Draw the progress meter. 42 | g.FillRectangle(brush, rect); 43 | 44 | // Draw a three-dimensional border around the control. 45 | Draw3DBorder(g); 46 | 47 | // Clean up. 48 | brush.Dispose(); 49 | g.Dispose(); 50 | } 51 | 52 | public int Minimum 53 | { 54 | get 55 | { 56 | return min; 57 | } 58 | 59 | set 60 | { 61 | // Prevent a negative value. 62 | if (value < 0) 63 | { 64 | min = 0; 65 | } 66 | 67 | // Make sure that the minimum value is never set higher than the maximum value. 68 | if (value > max) 69 | { 70 | min = value; 71 | min = value; 72 | } 73 | 74 | // Ensure value is still in range 75 | if (val < min) 76 | { 77 | val = min; 78 | } 79 | 80 | // Invalidate the control to get a repaint. 81 | this.Invalidate(); 82 | } 83 | } 84 | 85 | public void PerformStep() 86 | { 87 | Value++; 88 | //this.Invalidate(); 89 | } 90 | 91 | public int Maximum 92 | { 93 | get 94 | { 95 | return max; 96 | } 97 | 98 | set 99 | { 100 | // Make sure that the maximum value is never set lower than the minimum value. 101 | if (value < min) 102 | { 103 | min = value; 104 | } 105 | 106 | max = value; 107 | 108 | // Make sure that value is still in range. 109 | if (val > max) 110 | { 111 | val = max; 112 | } 113 | 114 | // Invalidate the control to get a repaint. 115 | //this.Invalidate(); 116 | } 117 | } 118 | 119 | public int Value 120 | { 121 | get 122 | { 123 | return val; 124 | } 125 | 126 | set 127 | { 128 | int oldValue = val; 129 | 130 | // Make sure that the value does not stray outside the valid range. 131 | if (value < min) 132 | { 133 | val = min; 134 | } 135 | else if (value > max) 136 | { 137 | val = max; 138 | } 139 | else 140 | { 141 | val = value; 142 | } 143 | 144 | // Invalidate only the changed area. 145 | float percent; 146 | 147 | Rectangle newValueRect = this.ClientRectangle; 148 | Rectangle oldValueRect = this.ClientRectangle; 149 | 150 | // Use a new value to calculate the rectangle for progress. 151 | percent = (float)(val - min) / (float)(max - min); 152 | newValueRect.Width = (int)((float)newValueRect.Width * percent); 153 | 154 | // Use an old value to calculate the rectangle for progress. 155 | percent = (float)(oldValue - min) / (float)(max - min); 156 | oldValueRect.Width = (int)((float)oldValueRect.Width * percent); 157 | 158 | Rectangle updateRect = new Rectangle(); 159 | 160 | // Find only the part of the screen that must be updated. 161 | if (newValueRect.Width > oldValueRect.Width) 162 | { 163 | updateRect.X = oldValueRect.Size.Width; 164 | updateRect.Width = newValueRect.Width - oldValueRect.Width; 165 | } 166 | else 167 | { 168 | updateRect.X = newValueRect.Size.Width; 169 | updateRect.Width = oldValueRect.Width - newValueRect.Width; 170 | } 171 | 172 | updateRect.Height = this.Height; 173 | 174 | // Invalidate the intersection region only. 175 | this.Invalidate(updateRect); 176 | } 177 | } 178 | 179 | public Color ProgressBarColor 180 | { 181 | get 182 | { 183 | return BarColor; 184 | } 185 | 186 | set 187 | { 188 | BarColor = value; 189 | 190 | // Invalidate the control to get a repaint. 191 | this.Invalidate(); 192 | } 193 | } 194 | 195 | private void Draw3DBorder(Graphics g) 196 | { 197 | int PenWidth = (int)Pens.White.Width; 198 | 199 | g.DrawLine(Pens.DarkGray, 200 | new Point(this.ClientRectangle.Left, this.ClientRectangle.Top), 201 | new Point(this.ClientRectangle.Width - PenWidth, this.ClientRectangle.Top)); 202 | g.DrawLine(Pens.DarkGray, 203 | new Point(this.ClientRectangle.Left, this.ClientRectangle.Top), 204 | new Point(this.ClientRectangle.Left, this.ClientRectangle.Height - PenWidth)); 205 | g.DrawLine(Pens.DarkGray, 206 | new Point(this.ClientRectangle.Left, this.ClientRectangle.Height - PenWidth), 207 | new Point(this.ClientRectangle.Width - PenWidth, this.ClientRectangle.Height - PenWidth)); 208 | g.DrawLine(Pens.DarkGray, 209 | new Point(this.ClientRectangle.Width - PenWidth, this.ClientRectangle.Top), 210 | new Point(this.ClientRectangle.Width - PenWidth, this.ClientRectangle.Height - PenWidth)); 211 | } 212 | } 213 | } 214 | -------------------------------------------------------------------------------- /databaseWorker/LanguageResources.ru.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | Нет доступа! Попробуйте ещё раз! 122 | 123 | 124 | В данной папке нет антивируса InfANT. Выберите другую директорию. 125 | 126 | 127 | Готово! 128 | 129 | 130 | Запускайте "_Launcher.exe"! 131 | 132 | 133 | Выберите файл, который хотите добавить. 134 | 135 | 136 | Выберите файл ----------------------> 137 | 138 | 139 | Выберите путь установки InfANT. 140 | 141 | 142 | Данный элемент уже есть в датабазе, его не нужно добавлять. 143 | 144 | -------------------------------------------------------------------------------- /databaseWorker/databaseeditor.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace databaseworker 2 | { 3 | partial class Databaseeditor 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Databaseeditor)); 32 | this.label1 = new System.Windows.Forms.Label(); 33 | this.btnSelectFile = new System.Windows.Forms.Button(); 34 | this.text_VirusPath = new System.Windows.Forms.TextBox(); 35 | this.btnAddIt = new System.Windows.Forms.Button(); 36 | this.radioSusp = new System.Windows.Forms.RadioButton(); 37 | this.textSHA1 = new System.Windows.Forms.TextBox(); 38 | this.radioVirus = new System.Windows.Forms.RadioButton(); 39 | this.panel1 = new System.Windows.Forms.Panel(); 40 | this.btnSelectAntivirus = new System.Windows.Forms.Button(); 41 | this.textPathToAntivirus = new System.Windows.Forms.TextBox(); 42 | this.Seperator = new System.Windows.Forms.Panel(); 43 | this.panel1.SuspendLayout(); 44 | this.SuspendLayout(); 45 | // 46 | // label1 47 | // 48 | resources.ApplyResources(this.label1, "label1"); 49 | this.label1.Name = "label1"; 50 | // 51 | // btnSelectFile 52 | // 53 | resources.ApplyResources(this.btnSelectFile, "btnSelectFile"); 54 | this.btnSelectFile.Name = "btnSelectFile"; 55 | this.btnSelectFile.UseVisualStyleBackColor = true; 56 | this.btnSelectFile.Click += new System.EventHandler(this.btnSelectFile_Click); 57 | // 58 | // text_VirusPath 59 | // 60 | resources.ApplyResources(this.text_VirusPath, "text_VirusPath"); 61 | this.text_VirusPath.Name = "text_VirusPath"; 62 | this.text_VirusPath.ReadOnly = true; 63 | // 64 | // btnAddIt 65 | // 66 | resources.ApplyResources(this.btnAddIt, "btnAddIt"); 67 | this.btnAddIt.Name = "btnAddIt"; 68 | this.btnAddIt.UseVisualStyleBackColor = true; 69 | this.btnAddIt.Click += new System.EventHandler(this.btnAddIt_Click); 70 | // 71 | // radioSusp 72 | // 73 | resources.ApplyResources(this.radioSusp, "radioSusp"); 74 | this.radioSusp.Name = "radioSusp"; 75 | this.radioSusp.UseVisualStyleBackColor = true; 76 | // 77 | // textSHA1 78 | // 79 | resources.ApplyResources(this.textSHA1, "textSHA1"); 80 | this.textSHA1.Name = "textSHA1"; 81 | this.textSHA1.ReadOnly = true; 82 | // 83 | // radioVirus 84 | // 85 | resources.ApplyResources(this.radioVirus, "radioVirus"); 86 | this.radioVirus.Checked = true; 87 | this.radioVirus.Name = "radioVirus"; 88 | this.radioVirus.TabStop = true; 89 | this.radioVirus.UseVisualStyleBackColor = true; 90 | // 91 | // panel1 92 | // 93 | resources.ApplyResources(this.panel1, "panel1"); 94 | this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; 95 | this.panel1.Controls.Add(this.radioVirus); 96 | this.panel1.Controls.Add(this.radioSusp); 97 | this.panel1.Name = "panel1"; 98 | // 99 | // btnSelectAntivirus 100 | // 101 | resources.ApplyResources(this.btnSelectAntivirus, "btnSelectAntivirus"); 102 | this.btnSelectAntivirus.Name = "btnSelectAntivirus"; 103 | this.btnSelectAntivirus.UseVisualStyleBackColor = true; 104 | this.btnSelectAntivirus.Click += new System.EventHandler(this.button1_Click); 105 | // 106 | // textPathToAntivirus 107 | // 108 | resources.ApplyResources(this.textPathToAntivirus, "textPathToAntivirus"); 109 | this.textPathToAntivirus.Name = "textPathToAntivirus"; 110 | this.textPathToAntivirus.ReadOnly = true; 111 | // 112 | // Seperator 113 | // 114 | resources.ApplyResources(this.Seperator, "Seperator"); 115 | this.Seperator.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; 116 | this.Seperator.ForeColor = System.Drawing.Color.Gray; 117 | this.Seperator.Name = "Seperator"; 118 | // 119 | // Databaseeditor 120 | // 121 | resources.ApplyResources(this, "$this"); 122 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 123 | this.Controls.Add(this.Seperator); 124 | this.Controls.Add(this.textPathToAntivirus); 125 | this.Controls.Add(this.btnSelectAntivirus); 126 | this.Controls.Add(this.panel1); 127 | this.Controls.Add(this.textSHA1); 128 | this.Controls.Add(this.btnAddIt); 129 | this.Controls.Add(this.text_VirusPath); 130 | this.Controls.Add(this.btnSelectFile); 131 | this.Controls.Add(this.label1); 132 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow; 133 | this.Name = "Databaseeditor"; 134 | this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.databaseeditor_FormClosing); 135 | this.Load += new System.EventHandler(this.Form1_Load); 136 | this.panel1.ResumeLayout(false); 137 | this.panel1.PerformLayout(); 138 | this.ResumeLayout(false); 139 | this.PerformLayout(); 140 | 141 | } 142 | 143 | #endregion 144 | 145 | private System.Windows.Forms.Label label1; 146 | private System.Windows.Forms.Button btnSelectFile; 147 | private System.Windows.Forms.TextBox text_VirusPath; 148 | private System.Windows.Forms.Button btnAddIt; 149 | private System.Windows.Forms.RadioButton radioSusp; 150 | private System.Windows.Forms.TextBox textSHA1; 151 | private System.Windows.Forms.RadioButton radioVirus; 152 | private System.Windows.Forms.Panel panel1; 153 | private System.Windows.Forms.Button btnSelectAntivirus; 154 | private System.Windows.Forms.TextBox textPathToAntivirus; 155 | private System.Windows.Forms.Panel Seperator; 156 | } 157 | } 158 | 159 | -------------------------------------------------------------------------------- /databaseWorker/databaseeditor.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Globalization; 4 | using System.IO; 5 | using System.Linq; 6 | using System.Security.Cryptography; 7 | using System.Text; 8 | using System.Threading; 9 | using System.Windows.Forms; 10 | 11 | namespace databaseworker 12 | { 13 | public partial class Databaseeditor : Form 14 | { 15 | private readonly bool _usedLauncher; 16 | public Databaseeditor(bool usedLauncherPool) 17 | { 18 | string temp = File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + @"\lang.ini"); 19 | var currentCulture = new CultureInfo(temp); 20 | Thread.CurrentThread.CurrentCulture = currentCulture; 21 | Thread.CurrentThread.CurrentUICulture = currentCulture; 22 | InitializeComponent(); 23 | _usedLauncher = usedLauncherPool; 24 | } 25 | 26 | private void btnSelectFile_Click(object sender, EventArgs e) 27 | { 28 | OpenFileDialog open = new OpenFileDialog {Title = LanguageResources.select_file}; 29 | open.ShowDialog(); 30 | 31 | if (open.FileName == "") return; 32 | text_VirusPath.Text = open.FileName; 33 | textSHA1.Text = GetSHA1(text_VirusPath.Text); 34 | btnAddIt.Enabled = true; 35 | } 36 | 37 | private string _SHA; 38 | private string GetSHA1(string filename) 39 | { 40 | using (var sha1 = SHA1.Create()) 41 | { 42 | using (var stream = File.OpenRead(filename)) 43 | { 44 | _SHA = BitConverter.ToString(sha1.ComputeHash(stream)).Replace("-", string.Empty); 45 | return _SHA; 46 | } 47 | } 48 | } 49 | 50 | 51 | private string _path; 52 | private bool _contains; 53 | private void button1_Click(object sender, EventArgs e) 54 | { 55 | FolderBrowserDialog fold = new FolderBrowserDialog {Description = LanguageResources.select_installation_folder}; 56 | fold.ShowDialog(); 57 | _contains = false; 58 | 59 | if (fold.SelectedPath == "") return; 60 | _path = fold.SelectedPath; 61 | foreach (string file in Directory.GetFiles(_path)) 62 | { 63 | if (file.Contains("InfANT.exe")) 64 | { 65 | textPathToAntivirus.Text = fold.SelectedPath; 66 | btnSelectAntivirus.Enabled = false; 67 | btnSelectFile.Enabled = true; 68 | _contains = true; 69 | File.WriteAllText(AppDomain.CurrentDomain.BaseDirectory + @"\lastpath.txt", _path); 70 | } 71 | } 72 | 73 | if(_contains == false) 74 | { 75 | MessageBox.Show(LanguageResources.cant_find_infant_in_folder); 76 | } 77 | } 78 | 79 | private List _localDatabase; 80 | private List _localDatabaseSusp; 81 | private void btnAddIt_Click(object sender, EventArgs e) 82 | { 83 | if (File.Exists(_path + @"\localdatabase.txt")) 84 | _localDatabase = File.ReadAllLines(_path + @"\localdatabase.txt", Encoding.UTF8).ToList(); 85 | else 86 | _localDatabase = new List(); 87 | 88 | if (File.Exists(_path + @"\localdatabasesusp.txt")) 89 | _localDatabaseSusp = File.ReadAllLines(_path + @"\localdatabasesusp.txt", Encoding.UTF8).ToList(); 90 | else 91 | _localDatabaseSusp = new List(); 92 | 93 | if(radioSusp.Checked == false) 94 | { 95 | try 96 | { 97 | if (!_localDatabase.Contains(_SHA) & !_localDatabaseSusp.Contains(_SHA)) 98 | { 99 | _localDatabase.Add(_SHA); 100 | File.WriteAllLines(_path + @"\localdatabase.txt", _localDatabase); 101 | } 102 | else 103 | { 104 | MessageBox.Show(LanguageResources.this_hash_already_exists); 105 | return; 106 | } 107 | } 108 | catch 109 | { 110 | MessageBox.Show(LanguageResources.access_denied); 111 | return; 112 | } 113 | } 114 | else 115 | { 116 | try 117 | { 118 | if (!_localDatabase.Contains(_SHA) & !_localDatabaseSusp.Contains(_SHA)) 119 | { 120 | _localDatabase.Add(_SHA); 121 | File.WriteAllLines(_path + @"\localdatabasesusp.txt", _localDatabase); 122 | } 123 | else 124 | { 125 | MessageBox.Show(LanguageResources.this_hash_already_exists); 126 | return; 127 | } 128 | } 129 | catch 130 | { 131 | MessageBox.Show(LanguageResources.access_denied); 132 | return; 133 | } 134 | } 135 | MessageBox.Show(LanguageResources.done); 136 | text_VirusPath.Text = LanguageResources.select_file_text; 137 | textSHA1.Text = string.Empty; 138 | btnAddIt.Enabled = false; 139 | } 140 | 141 | private void Form1_Load(object sender, EventArgs e) 142 | { 143 | if (!_usedLauncher) 144 | { 145 | MessageBox.Show(LanguageResources.open_launcher_instead); 146 | Application.Exit(); 147 | } 148 | 149 | if (File.Exists(AppDomain.CurrentDomain.BaseDirectory + @"\InfANT.exe")) 150 | { 151 | _path = Directory.GetCurrentDirectory(); 152 | textPathToAntivirus.Text = _path; 153 | btnSelectFile.Enabled = true; 154 | _contains = true; 155 | return; 156 | } 157 | 158 | if (!File.Exists(AppDomain.CurrentDomain.BaseDirectory + @"\lastpath.txt")) return; 159 | _path = File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + @"\lastpath.txt"); 160 | 161 | try 162 | { 163 | foreach (string file in Directory.GetFiles(_path)) 164 | { 165 | if (!file.Contains("InfANT.exe")) continue; 166 | textPathToAntivirus.Text = _path; 167 | btnSelectFile.Enabled = true; 168 | _contains = true; 169 | } 170 | } 171 | catch 172 | { 173 | File.Delete(AppDomain.CurrentDomain.BaseDirectory + @"\lastpath.txt"); 174 | Application.Restart(); 175 | return; 176 | } 177 | 178 | if(_contains == false) 179 | { 180 | File.Delete(AppDomain.CurrentDomain.BaseDirectory + @"\lastpath.txt"); 181 | Application.Restart(); 182 | return; 183 | } 184 | _contains = false; 185 | } 186 | 187 | private void databaseeditor_FormClosing(object sender, FormClosingEventArgs e) 188 | { 189 | Application.Exit(); 190 | } 191 | } 192 | } 193 | -------------------------------------------------------------------------------- /antivirus/Properties/Resources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 122 | ..\resources\favicoinfected.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 123 | 124 | 125 | ..\Resources\cls.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 126 | 127 | 128 | ..\Resources\min.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 129 | 130 | 131 | ..\resources\favicook.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 132 | 133 | 134 | ..\Resources\qst.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 135 | 136 | 137 | ..\Resources\wave.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 138 | 139 | 140 | ..\resources\logo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 141 | 142 | -------------------------------------------------------------------------------- /antivirus/InfANT.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | AnyCPU 7 | {28DEB622-909B-4ABC-807B-6A14653F5C04} 8 | WinExe 9 | Properties 10 | InfANT 11 | InfANT 12 | v4.5 13 | 512 14 | false 15 | publish\ 16 | true 17 | Disk 18 | true 19 | Foreground 20 | 7 21 | Days 22 | false 23 | false 24 | true 25 | 2 26 | 2.1.0.2 27 | false 28 | true 29 | 30 | 31 | AnyCPU 32 | true 33 | full 34 | false 35 | bin\Debug\ 36 | DEBUG;TRACE 37 | prompt 38 | 4 39 | 40 | 41 | AnyCPU 42 | pdbonly 43 | true 44 | bin\Release\ 45 | TRACE 46 | prompt 47 | 4 48 | false 49 | 50 | 51 | true 52 | 53 | 54 | false 55 | 56 | 57 | false 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | True 82 | True 83 | LanguageResources.resx 84 | 85 | 86 | Form 87 | 88 | 89 | loadingscreen.cs 90 | 91 | 92 | Form 93 | 94 | 95 | main.cs 96 | 97 | 98 | 99 | 100 | 101 | ResXFileCodeGenerator 102 | LanguageResources.Designer.cs 103 | 104 | 105 | 106 | loadingscreen.cs 107 | 108 | 109 | loadingscreen.cs 110 | 111 | 112 | main.cs 113 | 114 | 115 | main.cs 116 | 117 | 118 | ResXFileCodeGenerator 119 | Designer 120 | Resources.Designer.cs 121 | 122 | 123 | SettingsSingleFileGenerator 124 | Settings.Designer.cs 125 | 126 | 127 | True 128 | True 129 | Resources.resx 130 | 131 | 132 | True 133 | Settings.settings 134 | True 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | False 143 | Microsoft .NET Framework 4.5 %28x86 and x64%29 144 | true 145 | 146 | 147 | False 148 | .NET Framework 3.5 SP1 Client Profile 149 | false 150 | 151 | 152 | False 153 | .NET Framework 3.5 SP1 154 | false 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | Always 171 | 172 | 173 | 174 | 175 | {d382f98a-55d6-4a02-8553-76a06e792300} 176 | prgBar 177 | 178 | 179 | 180 | 187 | -------------------------------------------------------------------------------- /databaseWorker/databaseeditor.ru.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 122 | 6, 8 123 | 124 | 125 | 393, 13 126 | 127 | 128 | Это дополнение позволяет добавлять файлы в локальную датабазу InfANT. 129 | 130 | 131 | 106, 24 132 | 133 | 134 | Выбрать 135 | 136 | 137 | Выберите файл ----------------------> 138 | 139 | 140 | Добавить! 141 | 142 | 143 | 2, 25 144 | 145 | 146 | 101, 17 147 | 148 | 149 | Подозрительн. 150 | 151 | 152 | 2, 3 153 | 154 | 155 | 55, 17 156 | 157 | 158 | Вирус 159 | 160 | 161 | 104, 48 162 | 163 | 164 | 106, 24 165 | 166 | 167 | Выбрать 168 | 169 | 170 | Выберите путь до антивируса ---------------------> 171 | 172 | 173 | -10, 56 174 | 175 | 176 | 418, 1 177 | 178 | 179 | 404, 145 180 | 181 | -------------------------------------------------------------------------------- /launcher/launchermain.Designer.cs: -------------------------------------------------------------------------------- 1 | namespace launcher 2 | { 3 | partial class Mainupdater 4 | { 5 | /// 6 | /// Required designer variable. 7 | /// 8 | private System.ComponentModel.IContainer components = null; 9 | 10 | /// 11 | /// Clean up any resources being used. 12 | /// 13 | /// true if managed resources should be disposed; otherwise, false. 14 | protected override void Dispose(bool disposing) 15 | { 16 | if (disposing && (components != null)) 17 | { 18 | components.Dispose(); 19 | } 20 | base.Dispose(disposing); 21 | } 22 | 23 | #region Windows Form Designer generated code 24 | 25 | /// 26 | /// Required method for Designer support - do not modify 27 | /// the contents of this method with the code editor. 28 | /// 29 | private void InitializeComponent() 30 | { 31 | System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Mainupdater)); 32 | this.labLastText = new System.Windows.Forms.Label(); 33 | this.labLastActual = new System.Windows.Forms.Label(); 34 | this.btnLaunch = new System.Windows.Forms.Button(); 35 | this.btnDatabaseEditor = new System.Windows.Forms.Button(); 36 | this.btnFix = new System.Windows.Forms.Button(); 37 | this.btnUninstall = new System.Windows.Forms.Button(); 38 | this.btnUpdate = new System.Windows.Forms.Button(); 39 | this.btnChangelog = new System.Windows.Forms.Button(); 40 | this.labInstalledText = new System.Windows.Forms.Label(); 41 | this.labInstalledActual = new System.Windows.Forms.Label(); 42 | this.labDownloadSizeText = new System.Windows.Forms.Label(); 43 | this.labIsOutdatedText = new System.Windows.Forms.Label(); 44 | this.labIsOutdatedTextActual = new System.Windows.Forms.Label(); 45 | this.labDownloadSizeActual = new System.Windows.Forms.Label(); 46 | this.progressBar = new System.Windows.Forms.ProgressBar(); 47 | this.btnLang = new System.Windows.Forms.Button(); 48 | this.SuspendLayout(); 49 | // 50 | // labLastText 51 | // 52 | resources.ApplyResources(this.labLastText, "labLastText"); 53 | this.labLastText.Name = "labLastText"; 54 | // 55 | // labLastActual 56 | // 57 | resources.ApplyResources(this.labLastActual, "labLastActual"); 58 | this.labLastActual.Name = "labLastActual"; 59 | // 60 | // btnLaunch 61 | // 62 | resources.ApplyResources(this.btnLaunch, "btnLaunch"); 63 | this.btnLaunch.Name = "btnLaunch"; 64 | this.btnLaunch.UseVisualStyleBackColor = true; 65 | this.btnLaunch.Click += new System.EventHandler(this.btnLaunch_Click); 66 | // 67 | // btnDatabaseEditor 68 | // 69 | resources.ApplyResources(this.btnDatabaseEditor, "btnDatabaseEditor"); 70 | this.btnDatabaseEditor.Name = "btnDatabaseEditor"; 71 | this.btnDatabaseEditor.UseVisualStyleBackColor = true; 72 | this.btnDatabaseEditor.Click += new System.EventHandler(this.btnDatabaseEditor_Click); 73 | // 74 | // btnFix 75 | // 76 | resources.ApplyResources(this.btnFix, "btnFix"); 77 | this.btnFix.Name = "btnFix"; 78 | this.btnFix.UseVisualStyleBackColor = true; 79 | this.btnFix.Click += new System.EventHandler(this.btnFix_Click); 80 | // 81 | // btnUninstall 82 | // 83 | resources.ApplyResources(this.btnUninstall, "btnUninstall"); 84 | this.btnUninstall.Name = "btnUninstall"; 85 | this.btnUninstall.UseVisualStyleBackColor = true; 86 | this.btnUninstall.Click += new System.EventHandler(this.btnUninstall_Click); 87 | // 88 | // btnUpdate 89 | // 90 | resources.ApplyResources(this.btnUpdate, "btnUpdate"); 91 | this.btnUpdate.Name = "btnUpdate"; 92 | this.btnUpdate.UseVisualStyleBackColor = true; 93 | this.btnUpdate.Click += new System.EventHandler(this.btnUpdate_Click); 94 | // 95 | // btnChangelog 96 | // 97 | resources.ApplyResources(this.btnChangelog, "btnChangelog"); 98 | this.btnChangelog.Name = "btnChangelog"; 99 | this.btnChangelog.UseVisualStyleBackColor = true; 100 | this.btnChangelog.Click += new System.EventHandler(this.btnChangelog_Click); 101 | // 102 | // labInstalledText 103 | // 104 | resources.ApplyResources(this.labInstalledText, "labInstalledText"); 105 | this.labInstalledText.Name = "labInstalledText"; 106 | // 107 | // labInstalledActual 108 | // 109 | resources.ApplyResources(this.labInstalledActual, "labInstalledActual"); 110 | this.labInstalledActual.Name = "labInstalledActual"; 111 | // 112 | // labDownloadSizeText 113 | // 114 | resources.ApplyResources(this.labDownloadSizeText, "labDownloadSizeText"); 115 | this.labDownloadSizeText.Name = "labDownloadSizeText"; 116 | // 117 | // labIsOutdatedText 118 | // 119 | resources.ApplyResources(this.labIsOutdatedText, "labIsOutdatedText"); 120 | this.labIsOutdatedText.Name = "labIsOutdatedText"; 121 | // 122 | // labIsOutdatedTextActual 123 | // 124 | resources.ApplyResources(this.labIsOutdatedTextActual, "labIsOutdatedTextActual"); 125 | this.labIsOutdatedTextActual.Name = "labIsOutdatedTextActual"; 126 | // 127 | // labDownloadSizeActual 128 | // 129 | resources.ApplyResources(this.labDownloadSizeActual, "labDownloadSizeActual"); 130 | this.labDownloadSizeActual.Name = "labDownloadSizeActual"; 131 | // 132 | // progressBar 133 | // 134 | resources.ApplyResources(this.progressBar, "progressBar"); 135 | this.progressBar.Name = "progressBar"; 136 | // 137 | // btnLang 138 | // 139 | resources.ApplyResources(this.btnLang, "btnLang"); 140 | this.btnLang.Name = "btnLang"; 141 | this.btnLang.UseVisualStyleBackColor = true; 142 | this.btnLang.Click += new System.EventHandler(this.button1_Click); 143 | // 144 | // Mainupdater 145 | // 146 | resources.ApplyResources(this, "$this"); 147 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 148 | this.BackColor = System.Drawing.SystemColors.Control; 149 | this.Controls.Add(this.btnLang); 150 | this.Controls.Add(this.progressBar); 151 | this.Controls.Add(this.labDownloadSizeActual); 152 | this.Controls.Add(this.labIsOutdatedTextActual); 153 | this.Controls.Add(this.labIsOutdatedText); 154 | this.Controls.Add(this.labDownloadSizeText); 155 | this.Controls.Add(this.labInstalledActual); 156 | this.Controls.Add(this.labInstalledText); 157 | this.Controls.Add(this.btnChangelog); 158 | this.Controls.Add(this.btnUpdate); 159 | this.Controls.Add(this.btnUninstall); 160 | this.Controls.Add(this.btnFix); 161 | this.Controls.Add(this.btnDatabaseEditor); 162 | this.Controls.Add(this.btnLaunch); 163 | this.Controls.Add(this.labLastActual); 164 | this.Controls.Add(this.labLastText); 165 | this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow; 166 | this.Name = "Mainupdater"; 167 | this.ShowIcon = false; 168 | this.ShowInTaskbar = false; 169 | this.TopMost = true; 170 | this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.mainupdater_FormClosing); 171 | this.Load += new System.EventHandler(this.mainupdater_Load); 172 | this.ResumeLayout(false); 173 | this.PerformLayout(); 174 | 175 | } 176 | 177 | #endregion 178 | 179 | private System.Windows.Forms.Label labLastText; 180 | private System.Windows.Forms.Label labLastActual; 181 | private System.Windows.Forms.Button btnLaunch; 182 | private System.Windows.Forms.Button btnDatabaseEditor; 183 | private System.Windows.Forms.Button btnFix; 184 | private System.Windows.Forms.Button btnUninstall; 185 | private System.Windows.Forms.Button btnUpdate; 186 | private System.Windows.Forms.Button btnChangelog; 187 | private System.Windows.Forms.Label labInstalledText; 188 | private System.Windows.Forms.Label labInstalledActual; 189 | private System.Windows.Forms.Label labDownloadSizeText; 190 | private System.Windows.Forms.Label labIsOutdatedText; 191 | private System.Windows.Forms.Label labIsOutdatedTextActual; 192 | private System.Windows.Forms.Label labDownloadSizeActual; 193 | private System.Windows.Forms.ProgressBar progressBar; 194 | private System.Windows.Forms.Button btnLang; 195 | } 196 | } 197 | 198 | -------------------------------------------------------------------------------- /antivirus/loadingscreen.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | lab_Wait 122 | 123 | 124 | 125 | MiddleCenter 126 | 127 | 128 | Wait for the application to load, please! 129 | 130 | 131 | System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 132 | 133 | 134 | 135 | CenterScreen 136 | 137 | 138 | $this 139 | 140 | 141 | 784, 575 142 | 143 | 144 | 203, 256 145 | 146 | 147 | 6, 13 148 | 149 | 150 | 200, 240 151 | 152 | 153 | prgbar.BlueProgressBar, prgbar, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 154 | 155 | 156 | 400, 13 157 | 158 | 159 | ProgressLoading 160 | 161 | 162 | System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 163 | 164 | 165 | 397, 23 166 | 167 | 168 | $this 169 | 170 | 171 | 1 172 | 173 | 174 | 175 | 0 176 | 177 | 178 | 0 179 | 180 | 181 | 2 182 | 183 | 184 | InfANT Loader 185 | 186 | 187 | LoadingScreen 188 | 189 | 190 | True 191 | 192 | 193 | ru 194 | 195 | -------------------------------------------------------------------------------- /launcher/LanguageResources.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | corrupted! 122 | 123 | 124 | no internet 125 | 126 | 127 | Install 128 | 129 | 130 | Oops. 131 | 132 | 133 | Done! 134 | 135 | 136 | Something went wrong, but nothing bad happened. Just try again. 137 | 138 | 139 | InfANT was fixed successfully! 140 | 141 | 142 | Are you sure? 143 | 144 | 145 | Error! 146 | 147 | 148 | Uninstall finished successfully! 149 | 150 | 151 | We hope you had a good experience using our software! 152 | Launcher will close now. 153 | 154 | 155 | This action will uninstall this app from your computer. Launcher will not be deleted. 156 | 157 | 158 | no 159 | 160 | 161 | Yay! 162 | 163 | 164 | Can't connect to the Internet! 165 | 166 | 167 | Installing/updating finished! 168 | 169 | 170 | Fatal Error! 171 | 172 | 173 | Update 174 | 175 | 176 | yes! 177 | 178 | 179 | not installed! 180 | 181 | 182 | An another instance of this application in currently running. 183 | You can only run 1 instance at the same time. 184 | 185 | 186 | Looks like you have no internet connection (or our server is down), can't check for updates! 187 | 188 | 189 | Couldn't write the logs to disk! 190 | It looks like you have no access to the folder or the file is in use. 191 | 192 | Reboot your PC and relaucnh InfANT with Administrator privileges. 193 | 194 | 195 | Looks like you have no internet connection (or our server is down), changelog wasn't updated 196 | 197 | 198 | Can't launch InfANT! The file is busy or corrupt. 199 | 200 | 201 | Looks like you have no internet connection (or our server is down), can't install/update the app! 202 | 203 | 204 | This action will RESET all of your settings and will CLEAN your logs. Also, it will renew some files. 205 | 206 | -------------------------------------------------------------------------------- /launcher/LanguageResources.ru.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | Это действие удалит InfANTс этого компьютера. Launcher удалён не будет. 122 | 123 | 124 | InfANT уже был запущен. Допускается работа только одной истанции. 125 | 126 | 127 | Вы уверены? 128 | 129 | 130 | Проблемы с доступом к интернету! 131 | 132 | 133 | Ошибка при запуске InfANT! Файл повреждён или используется. 134 | 135 | 136 | Не удалось записать историю сканирований на диск, возможно она уже открыта или у прогрммы нет доступа к данному пути. 137 | 138 | Перезагрузите компьютер и повторно запустите InfANT от имени администратора. 139 | 140 | 141 | повреждена! 142 | 143 | 144 | Готово! 145 | 146 | 147 | Ошибка! 148 | 149 | 150 | Критическая Ошибка! 151 | 152 | 153 | Я надеюсь вам понравилось использовать наше програмное обеспечение. Сейчас Launcher будет закрыт. 154 | 155 | 156 | Установить! 157 | 158 | 159 | Установка/обновление завершены. 160 | 161 | 162 | нет 163 | 164 | 165 | отсутствует! 166 | 167 | 168 | Проблемы с доступом к интернету (или с нашим сервером), не удалось проверить обновления! 169 | 170 | 171 | Проблемы с доступом к интернету (или с нашим сервером), не удалось установить InfANT / обновления! 172 | 173 | 174 | Проблемы с доступом к интернету (или с нашим сервером), не удалось обновить "Историю изменений"! 175 | 176 | 177 | нет сети 178 | 179 | 180 | Упс. 181 | 182 | 183 | Что-то пошло не так, но ничего страшного не произошло. Попробуйте ещё раз. 184 | 185 | 186 | Это действие СБРОСИТ все ваши настройки и ОЧИСТИТ историю работы программы. Также некоторые файлы будут восстановлены. 187 | 188 | 189 | Деинсталляция успешно завершена! 190 | 191 | 192 | Обновить 193 | 194 | 195 | InfANT был успешно восстановлён! 196 | 197 | 198 | Ура! 199 | 200 | 201 | да! 202 | 203 | 204 | 205 | 206 | -------------------------------------------------------------------------------- /launcher/launchermain.ru.resx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | text/microsoft-resx 110 | 111 | 112 | 2.0 113 | 114 | 115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 116 | 117 | 118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 119 | 120 | 121 | 122 | 5, 34 123 | 124 | 125 | 105, 13 126 | 127 | 128 | Последняя версия: 129 | 130 | 131 | 106, 34 132 | 133 | 134 | 38, 13 135 | 136 | 137 | ждите 138 | 139 | 140 | 95, 67 141 | 142 | 143 | 244, 26 144 | 145 | 146 | Запустить 147 | 148 | 149 | 345, 97 150 | 151 | 152 | 154, 26 153 | 154 | 155 | Редактор Датабазы 156 | 157 | 158 | 159 | NoControl 160 | 161 | 162 | 345, 67 163 | 164 | 165 | 154, 26 166 | 167 | 168 | Восстановить приложение 169 | 170 | 171 | 345, 36 172 | 173 | 174 | 154, 26 175 | 176 | 177 | Деинсталлировать InfANT 178 | 179 | 180 | 82, 26 181 | 182 | 183 | Обновить 184 | 185 | 186 | Microsoft Sans Serif, 8pt 187 | 188 | 189 | NoControl 190 | 191 | 192 | 345, 6 193 | 194 | 195 | 121, 26 196 | 197 | 198 | История изменений 199 | 200 | 201 | 202 | 148, 17 203 | 204 | 205 | 128, 13 206 | 207 | 208 | Установленная версия: 209 | 210 | 211 | 273, 17 212 | 213 | 214 | 38, 13 215 | 216 | 217 | ждите 218 | 219 | 220 | 12, 16 221 | 222 | 223 | 98, 13 224 | 225 | 226 | Размер загрузки: 227 | 228 | 229 | 211, 34 230 | 231 | 232 | 65, 13 233 | 234 | 235 | Устарела?: 236 | 237 | 238 | 273, 34 239 | 240 | 241 | 38, 13 242 | 243 | 244 | ждите 245 | 246 | 247 | 107, 17 248 | 249 | 250 | 330, 24 251 | 252 | 253 | 465, 6 254 | 255 | 256 | Eng 257 | 258 | 259 | 506, 130 260 | 261 | --------------------------------------------------------------------------------