diff --git a/README.md b/README.md index 204072d..b0820c3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Xvirus SDK C# -Xvirus SDK 4.0.5 C# bindings. +Xvirus SDK 4.1 C# bindings. ## Table of Contents @@ -17,29 +17,38 @@ Xvirus SDK 4.0.5 C# bindings. ## Minimum Requirements -To run Xvirus SDK you need: +To use Xvirus SDK you need: -- .NET 5 Runtime - [download](https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-5.0.11-windows-x64-installer) +- .NET 7 SDK - [download](https://dotnet.microsoft.com/en-us/download/dotnet/7.0) ## Changelog -- Completely redone in .NET 5 -- Now supports Linux (CLI and C# bindings only) -- Added XvirusAI scan engine (BETA) -- Scan speed is up to 2x faster -- Fixed memory usage spike when scanning large files -- Removed file size limit for scanned files by default -- The checkUpdate function can now check for SDK updates -- Added 3 new settings "EnableAIScan", "MaxScanLength" and "DatabaseVersion" +- Version **4.1**: + + - Upgraded from .NET 5 to .NET 7 + - C++ bindings now also support Linux + - Removed Minimum Requirements on C++ bindings and CLI + - Changed how exceptions are handled in C++ bindings + +- Version **4.0**: + - Completely redone in .NET 5 + - Now supports Linux (CLI and C# bindings only) + - Added XvirusAI scan engine (BETA) + - Scan speed is up to 2x faster + - Fixed memory usage spike when scanning large files + - Removed file size limit for scanned files by default + - The checkUpdate function can now check for SDK updates + - Added 3 new settings "EnableAIScan", "MaxScanLength" and "DatabaseVersion" ## Known Issues - XvirusAI engine is still in BETA. It is not recomended to use in production yet. +- XvirusAI engine does not work in C++ bindings. - The checkUpdate function can now check for SDK updates but can't update it ## Get Started -The "`example`" folder contains an example project on how to import and use Xvirus SDK in C# (.NET Core 5). +The "`example`" folder contains an example project on how to import and use Xvirus SDK in C# (.NET 7). You can run it by building it and then running executable file in the output folder. @@ -74,7 +83,7 @@ The `scan` function returns a class `ScanResult` with the following properties: public class ScanResult { public bool IsMalware { get; set; } // true if malware - public string Name { get; set; } // detection name + public string Name { get; set; } // detection name public double MalwareScore { get; set; } // between 0 and 1, higher score means more likely to be malware, -1 if there was an error } ``` diff --git a/bin/BaseLibrary.dll b/bin/BaseLibrary.dll new file mode 100644 index 0000000..d24ca45 Binary files /dev/null and b/bin/BaseLibrary.dll differ diff --git a/bin/XescSDK.dll b/bin/XescSDK.dll deleted file mode 100644 index a5d9d0e..0000000 Binary files a/bin/XescSDK.dll and /dev/null differ diff --git a/bin/XescSDK.runtimeconfig.json b/bin/XescSDK.runtimeconfig.json deleted file mode 100644 index d54914b..0000000 --- a/bin/XescSDK.runtimeconfig.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "runtimeOptions": { - "tfm": "net5.0", - "framework": { - "name": "Microsoft.NETCore.App", - "version": "5.0.0" - }, - "configProperties": { - "System.Reflection.Metadata.MetadataUpdater.IsSupported": false - } - } -} \ No newline at end of file diff --git a/bin/XescSDK.deps.json b/bin/XvirusSDK.deps.json similarity index 99% rename from bin/XescSDK.deps.json rename to bin/XvirusSDK.deps.json index 9858ed5..e011256 100644 --- a/bin/XescSDK.deps.json +++ b/bin/XvirusSDK.deps.json @@ -1,19 +1,17 @@ { "runtimeTarget": { - "name": ".NETCoreApp,Version=v5.0", + "name": ".NETCoreApp,Version=v7.0", "signature": "" }, "compilationOptions": {}, "targets": { - ".NETCoreApp,Version=v5.0": { - "XescSDK/4.0.5": { + ".NETCoreApp,Version=v7.0": { + "XvirusSDK/4.1.0.0": { "dependencies": { - "Microsoft.ML": "1.7.1", - "Microsoft.ML.FastTree": "1.7.1", - "PeNet": "1.6.1" + "BaseLibrary": "1.0.0" }, "runtime": { - "XescSDK.dll": {} + "XvirusSDK.dll": {} } }, "Microsoft.CSharp/4.3.0": { @@ -1035,11 +1033,21 @@ "fileVersion": "1.3.12.62151" } } + }, + "BaseLibrary/1.0.0": { + "dependencies": { + "Microsoft.ML": "1.7.1", + "Microsoft.ML.FastTree": "1.7.1", + "PeNet": "1.6.1" + }, + "runtime": { + "BaseLibrary.dll": {} + } } } }, "libraries": { - "XescSDK/4.0.5": { + "XvirusSDK/4.1.0.0": { "type": "project", "serviceable": false, "sha512": "" @@ -1743,6 +1751,11 @@ "sha512": "sha512-CQETcfKyEq6Uki9pExNZI5sEHeKqdt9Fc4pdLHu1mgaboQp0aI4W45M+UUnG6Zc2hxWTDmbD2AFVKA1wjU19YA==", "path": "xunit.skippablefact/1.3.12", "hashPath": "xunit.skippablefact.1.3.12.nupkg.sha512" + }, + "BaseLibrary/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" } } } \ No newline at end of file diff --git a/bin/XvirusSDK.dll b/bin/XvirusSDK.dll new file mode 100644 index 0000000..034fda3 Binary files /dev/null and b/bin/XvirusSDK.dll differ diff --git a/example/Example.csproj b/example/Example.csproj index 35ed8ac..d562b3d 100644 --- a/example/Example.csproj +++ b/example/Example.csproj @@ -2,12 +2,12 @@ Exe - net5.0 + net7.0 - - ..\bin\XescSDK.dll + + ..\bin\XvirusSDK.dll