From 93ba88a35fb01eacafe5e62dc4f912201838c568 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Sun, 17 Sep 2023 00:18:04 -0400 Subject: [PATCH] Enable nullable context and move WrapperFactory --- .../AACSMediaKeyBlock.cs | 14 ++++- BinaryObjectScanner.FileType/BDPlusSVM.cs | 10 ++- BinaryObjectScanner.FileType/BFPK.cs | 10 ++- BinaryObjectScanner.FileType/BSP.cs | 10 ++- BinaryObjectScanner.FileType/BZip2.cs | 8 +++ .../BinaryObjectScanner.FileType.csproj | 5 +- BinaryObjectScanner.FileType/CFB.cs | 19 ++++++ BinaryObjectScanner.FileType/Executable.cs | 61 ++++++++++++++++--- BinaryObjectScanner.FileType/GCF.cs | 10 ++- BinaryObjectScanner.FileType/GZIP.cs | 8 +++ .../InstallShieldArchiveV3.cs | 17 +++++- .../InstallShieldCAB.cs | 37 +++++++++-- BinaryObjectScanner.FileType/LDSCRYPT.cs | 8 +++ BinaryObjectScanner.FileType/MPQ.cs | 8 +++ BinaryObjectScanner.FileType/MicrosoftCAB.cs | 8 +++ BinaryObjectScanner.FileType/MicrosoftLZ.cs | 8 +++ BinaryObjectScanner.FileType/PAK.cs | 10 ++- BinaryObjectScanner.FileType/PFF.cs | 10 ++- BinaryObjectScanner.FileType/PKZIP.cs | 16 ++++- BinaryObjectScanner.FileType/PLJ.cs | 8 +++ BinaryObjectScanner.FileType/Quantum.cs | 10 ++- BinaryObjectScanner.FileType/RAR.cs | 8 +++ BinaryObjectScanner.FileType/SFFS.cs | 16 +++++ BinaryObjectScanner.FileType/SGA.cs | 10 ++- BinaryObjectScanner.FileType/SevenZip.cs | 8 +++ BinaryObjectScanner.FileType/TapeArchive.cs | 8 +++ BinaryObjectScanner.FileType/Textfile.cs | 12 ++++ BinaryObjectScanner.FileType/VBSP.cs | 10 ++- BinaryObjectScanner.FileType/VPK.cs | 10 ++- BinaryObjectScanner.FileType/WAD.cs | 10 ++- BinaryObjectScanner.FileType/XZ.cs | 8 +++ BinaryObjectScanner.FileType/XZP.cs | 10 ++- .../BinaryObjectScanner.GameEngine.csproj | 1 - .../BinaryObjectScanner.Interfaces.csproj | 6 +- BinaryObjectScanner.Interfaces/IDetectable.cs | 8 +++ .../IExtractable.cs | 8 +++ BinaryObjectScanner.Packer/ASPack.cs | 8 +++ .../AdvancedInstaller.cs | 8 +++ BinaryObjectScanner.Packer/Armadillo.cs | 8 +++ .../AutoPlayMediaStudio.cs | 8 +++ .../BinaryObjectScanner.Packer.csproj | 3 +- BinaryObjectScanner.Packer/CExe.cs | 8 +++ BinaryObjectScanner.Packer/EXEStealth.cs | 8 +++ .../EmbeddedExecutable.cs | 8 +++ BinaryObjectScanner.Packer/GenteeInstaller.cs | 8 +++ .../HyperTechCrackProof.cs | 8 +++ BinaryObjectScanner.Packer/InnoSetup.cs | 8 +++ BinaryObjectScanner.Packer/InstallAnywhere.cs | 8 +++ BinaryObjectScanner.Packer/InstallerVISE.cs | 8 +++ .../IntelInstallationFramework.cs | 8 +++ BinaryObjectScanner.Packer/MicrosoftCABSFX.cs | 8 +++ BinaryObjectScanner.Packer/NSIS.cs | 8 +++ BinaryObjectScanner.Packer/NeoLite.cs | 8 +++ BinaryObjectScanner.Packer/PECompact.cs | 8 +++ BinaryObjectScanner.Packer/Petite.cs | 8 +++ BinaryObjectScanner.Packer/SetupFactory.cs | 8 +++ BinaryObjectScanner.Packer/SevenZipSFX.cs | 8 +++ BinaryObjectScanner.Packer/Shrinker.cs | 8 +++ BinaryObjectScanner.Packer/UPX.cs | 8 +++ BinaryObjectScanner.Packer/WinRARSFX.cs | 8 +++ BinaryObjectScanner.Packer/WinZipSFX.cs | 8 +++ BinaryObjectScanner.Packer/WiseInstaller.cs | 8 +++ BinaryObjectScanner.Packer/dotFuscator.cs | 8 +++ .../BinaryObjectScanner.Protection.csproj | 7 ++- .../BinaryObjectScanner.Utilities.csproj | 5 ++ .../WrapperFactory.cs | 8 +-- .../BinaryObjectScanner.Wrappers.csproj | 40 ------------ BurnOutSharp.sln | 6 -- BurnOutSharp/BurnOutSharp.csproj | 4 -- BurnOutSharp/Scanner.cs | 1 - Test/Printer.cs | 1 - Test/Test.csproj | 1 - 72 files changed, 616 insertions(+), 96 deletions(-) rename {BinaryObjectScanner.Wrappers => BinaryObjectScanner.Utilities}/WrapperFactory.cs (96%) delete mode 100644 BinaryObjectScanner.Wrappers/BinaryObjectScanner.Wrappers.csproj diff --git a/BinaryObjectScanner.FileType/AACSMediaKeyBlock.cs b/BinaryObjectScanner.FileType/AACSMediaKeyBlock.cs index 66a2288f..b167fad7 100644 --- a/BinaryObjectScanner.FileType/AACSMediaKeyBlock.cs +++ b/BinaryObjectScanner.FileType/AACSMediaKeyBlock.cs @@ -11,7 +11,11 @@ namespace BinaryObjectScanner.FileType public class AACSMediaKeyBlock : IDetectable { /// +#if NET48 public string Detect(string file, bool includeDebug) +#else + public string? Detect(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -23,22 +27,26 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Detect(Stream stream, string file, bool includeDebug) +#else + public string? Detect(Stream stream, string file, bool includeDebug) +#endif { // If the MKB file itself fails try { // Create the wrapper - SabreTools.Serialization.Wrappers.AACSMediaKeyBlock mkb = SabreTools.Serialization.Wrappers.AACSMediaKeyBlock.Create(stream); + var mkb = SabreTools.Serialization.Wrappers.AACSMediaKeyBlock.Create(stream); if (mkb == null) return null; // Derive the version, if possible - var typeAndVersion = mkb.Model.Records.FirstOrDefault(r => r.RecordType == SabreTools.Models.AACS.RecordType.TypeAndVersion); + var typeAndVersion = mkb.Model.Records?.FirstOrDefault(r => r?.RecordType == SabreTools.Models.AACS.RecordType.TypeAndVersion); if (typeAndVersion == null) return "AACS (Unknown Version)"; else - return $"AACS {(typeAndVersion as SabreTools.Models.AACS.TypeAndVersionRecord).VersionNumber}"; + return $"AACS {(typeAndVersion as SabreTools.Models.AACS.TypeAndVersionRecord)?.VersionNumber}"; } catch (Exception ex) { diff --git a/BinaryObjectScanner.FileType/BDPlusSVM.cs b/BinaryObjectScanner.FileType/BDPlusSVM.cs index 94a3e470..df71c03d 100644 --- a/BinaryObjectScanner.FileType/BDPlusSVM.cs +++ b/BinaryObjectScanner.FileType/BDPlusSVM.cs @@ -10,7 +10,11 @@ namespace BinaryObjectScanner.FileType public class BDPlusSVM : IDetectable { /// +#if NET48 public string Detect(string file, bool includeDebug) +#else + public string? Detect(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -22,13 +26,17 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Detect(Stream stream, string file, bool includeDebug) +#else + public string? Detect(Stream stream, string file, bool includeDebug) +#endif { // If the BD+ file itself fails try { // Create the wrapper - SabreTools.Serialization.Wrappers.BDPlusSVM svm = SabreTools.Serialization.Wrappers.BDPlusSVM.Create(stream); + var svm = SabreTools.Serialization.Wrappers.BDPlusSVM.Create(stream); if (svm == null) return null; diff --git a/BinaryObjectScanner.FileType/BFPK.cs b/BinaryObjectScanner.FileType/BFPK.cs index 1615dbde..68d303c1 100644 --- a/BinaryObjectScanner.FileType/BFPK.cs +++ b/BinaryObjectScanner.FileType/BFPK.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class BFPK : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,12 +28,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.BFPK bfpk = SabreTools.Serialization.Wrappers.BFPK.Create(stream); + var bfpk = SabreTools.Serialization.Wrappers.BFPK.Create(stream); if (bfpk == null) return null; diff --git a/BinaryObjectScanner.FileType/BSP.cs b/BinaryObjectScanner.FileType/BSP.cs index 5c88f935..2af11ea8 100644 --- a/BinaryObjectScanner.FileType/BSP.cs +++ b/BinaryObjectScanner.FileType/BSP.cs @@ -11,7 +11,11 @@ namespace BinaryObjectScanner.FileType public class BSP : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -23,12 +27,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.BSP bsp = SabreTools.Serialization.Wrappers.BSP.Create(stream); + var bsp = SabreTools.Serialization.Wrappers.BSP.Create(stream); if (bsp == null) return null; diff --git a/BinaryObjectScanner.FileType/BZip2.cs b/BinaryObjectScanner.FileType/BZip2.cs index 788947ff..42b7a5db 100644 --- a/BinaryObjectScanner.FileType/BZip2.cs +++ b/BinaryObjectScanner.FileType/BZip2.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class BZip2 : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/BinaryObjectScanner.FileType.csproj b/BinaryObjectScanner.FileType/BinaryObjectScanner.FileType.csproj index 1f87ea98..f5a38630 100644 --- a/BinaryObjectScanner.FileType/BinaryObjectScanner.FileType.csproj +++ b/BinaryObjectScanner.FileType/BinaryObjectScanner.FileType.csproj @@ -19,13 +19,16 @@ true + + enable + + - diff --git a/BinaryObjectScanner.FileType/CFB.cs b/BinaryObjectScanner.FileType/CFB.cs index 89a8cdb0..807c2800 100644 --- a/BinaryObjectScanner.FileType/CFB.cs +++ b/BinaryObjectScanner.FileType/CFB.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class CFB : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { @@ -49,7 +57,14 @@ namespace BinaryObjectScanner.FileType if (strData == null) return; +#if NET48 string decoded = DecodeStreamName(e.Name).TrimEnd('\0'); +#else + string? decoded = DecodeStreamName(e.Name)?.TrimEnd('\0'); +#endif + if (decoded == null) + return; + byte[] nameBytes = Encoding.UTF8.GetBytes(e.Name); // UTF-8 encoding of 0x4840. @@ -84,7 +99,11 @@ namespace BinaryObjectScanner.FileType } /// Adapted from LibMSI +#if NET48 public static string DecodeStreamName(string input) +#else + public static string? DecodeStreamName(string input) +#endif { if (input == null) return null; diff --git a/BinaryObjectScanner.FileType/Executable.cs b/BinaryObjectScanner.FileType/Executable.cs index 85267463..732e7db6 100644 --- a/BinaryObjectScanner.FileType/Executable.cs +++ b/BinaryObjectScanner.FileType/Executable.cs @@ -8,7 +8,6 @@ using System.Text; using System.Threading.Tasks; using BinaryObjectScanner.Interfaces; using BinaryObjectScanner.Utilities; -using BinaryObjectScanner.Wrappers; using SabreTools.Serialization.Wrappers; namespace BinaryObjectScanner.FileType @@ -44,7 +43,7 @@ namespace BinaryObjectScanner.FileType if (contentCheckClasses == null) contentCheckClasses = InitCheckClasses(); - return contentCheckClasses; + return contentCheckClasses ?? Enumerable.Empty(); } } @@ -58,7 +57,7 @@ namespace BinaryObjectScanner.FileType if (linearExecutableCheckClasses == null) linearExecutableCheckClasses = InitCheckClasses(); - return linearExecutableCheckClasses; + return linearExecutableCheckClasses ?? Enumerable.Empty(); } } @@ -72,7 +71,7 @@ namespace BinaryObjectScanner.FileType if (msdosExecutableCheckClasses == null) msdosExecutableCheckClasses = InitCheckClasses(); - return msdosExecutableCheckClasses; + return msdosExecutableCheckClasses ?? Enumerable.Empty(); } } @@ -86,7 +85,7 @@ namespace BinaryObjectScanner.FileType if (newExecutableCheckClasses == null) newExecutableCheckClasses = InitCheckClasses(); - return newExecutableCheckClasses; + return newExecutableCheckClasses ?? Enumerable.Empty(); } } @@ -100,7 +99,7 @@ namespace BinaryObjectScanner.FileType if (portableExecutableCheckClasses == null) portableExecutableCheckClasses = InitCheckClasses(); - return portableExecutableCheckClasses; + return portableExecutableCheckClasses ?? Enumerable.Empty(); } } @@ -111,32 +110,56 @@ namespace BinaryObjectScanner.FileType /// /// Cache for all IContentCheck types /// +#if NET48 private static IEnumerable contentCheckClasses; +#else + private static IEnumerable? contentCheckClasses; +#endif /// /// Cache for all ILinearExecutableCheck types /// +#if NET48 private static IEnumerable linearExecutableCheckClasses; +#else + private static IEnumerable? linearExecutableCheckClasses; +#endif /// /// Cache for all IMSDOSExecutableCheck types /// +#if NET48 private static IEnumerable msdosExecutableCheckClasses; +#else + private static IEnumerable? msdosExecutableCheckClasses; +#endif /// /// Cache for all INewExecutableCheck types /// +#if NET48 private static IEnumerable newExecutableCheckClasses; +#else + private static IEnumerable? newExecutableCheckClasses; +#endif /// /// Cache for all IPortableExecutableCheck types /// +#if NET48 private static IEnumerable portableExecutableCheckClasses; +#else + private static IEnumerable? portableExecutableCheckClasses; +#endif #endregion /// +#if NET48 public string Detect(string file, bool includeDebug) +#else + public string? Detect(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -148,7 +171,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Detect(Stream stream, string file, bool includeDebug) +#else + public string? Detect(Stream stream, string file, bool includeDebug) +#endif { // Try to create a wrapper for the proper executable type var wrapper = WrapperFactory.CreateExecutableWrapper(stream); @@ -203,7 +230,11 @@ namespace BinaryObjectScanner.FileType /// Stream to scan the contents of /// True to include debug data, false otherwise /// Set of protections in file, null on error +#if NET48 public ConcurrentDictionary RunContentChecks(string file, Stream stream, bool includeDebug) +#else + public ConcurrentDictionary? RunContentChecks(string? file, Stream stream, bool includeDebug) +#endif { // If we have an invalid file if (string.IsNullOrWhiteSpace(file)) @@ -212,7 +243,11 @@ namespace BinaryObjectScanner.FileType return null; // Read the file contents +#if NET48 byte[] fileContent = null; +#else + byte[]? fileContent = null; +#endif try { using (BinaryReader br = new BinaryReader(stream, Encoding.Default, true)) @@ -396,15 +431,23 @@ namespace BinaryObjectScanner.FileType /// /// Initialize all implementations of a type /// +#if NET48 private static IEnumerable InitCheckClasses() - => InitCheckClasses(typeof(GameEngine._DUMMY).Assembly) - .Concat(InitCheckClasses(typeof(Packer._DUMMY).Assembly)) - .Concat(InitCheckClasses(typeof(Protection._DUMMY).Assembly)); +#else + private static IEnumerable? InitCheckClasses() +#endif + => InitCheckClasses(typeof(GameEngine._DUMMY).Assembly) ?? Enumerable.Empty() + .Concat(InitCheckClasses(typeof(Packer._DUMMY).Assembly) ?? Enumerable.Empty()) + .Concat(InitCheckClasses(typeof(Protection._DUMMY).Assembly) ?? Enumerable.Empty()); /// /// Initialize all implementations of a type /// +#if NET48 private static IEnumerable InitCheckClasses(Assembly assembly) +#else + private static IEnumerable? InitCheckClasses(Assembly assembly) +#endif { return assembly.GetTypes() .Where(t => t.IsClass && t.GetInterface(typeof(T).Name) != null) diff --git a/BinaryObjectScanner.FileType/GCF.cs b/BinaryObjectScanner.FileType/GCF.cs index 18681bdd..6518e465 100644 --- a/BinaryObjectScanner.FileType/GCF.cs +++ b/BinaryObjectScanner.FileType/GCF.cs @@ -11,7 +11,11 @@ namespace BinaryObjectScanner.FileType public class GCF : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -23,12 +27,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.GCF gcf = SabreTools.Serialization.Wrappers.GCF.Create(stream); + var gcf = SabreTools.Serialization.Wrappers.GCF.Create(stream); if (gcf == null) return null; diff --git a/BinaryObjectScanner.FileType/GZIP.cs b/BinaryObjectScanner.FileType/GZIP.cs index be406487..fb51743b 100644 --- a/BinaryObjectScanner.FileType/GZIP.cs +++ b/BinaryObjectScanner.FileType/GZIP.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class GZIP : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/InstallShieldArchiveV3.cs b/BinaryObjectScanner.FileType/InstallShieldArchiveV3.cs index f58c0bc0..724dc20b 100644 --- a/BinaryObjectScanner.FileType/InstallShieldArchiveV3.cs +++ b/BinaryObjectScanner.FileType/InstallShieldArchiveV3.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class InstallShieldArchiveV3 : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { @@ -38,8 +46,13 @@ namespace BinaryObjectScanner.FileType try { string tempFile = Path.Combine(tempPath, cfile.FullPath); - if (!Directory.Exists(Path.GetDirectoryName(tempFile))) - Directory.CreateDirectory(Path.GetDirectoryName(tempFile)); +#if NET48 + string directoryName = Path.GetDirectoryName(tempFile); +#else + string? directoryName = Path.GetDirectoryName(tempFile); +#endif + if (directoryName != null && !Directory.Exists(directoryName)) + Directory.CreateDirectory(directoryName); (byte[] fileContents, string error) = archive.Extract(cfile.FullPath); if (!string.IsNullOrWhiteSpace(error)) diff --git a/BinaryObjectScanner.FileType/InstallShieldCAB.cs b/BinaryObjectScanner.FileType/InstallShieldCAB.cs index 511c068d..627de617 100644 --- a/BinaryObjectScanner.FileType/InstallShieldCAB.cs +++ b/BinaryObjectScanner.FileType/InstallShieldCAB.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class InstallShieldCAB : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,18 +28,39 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { // Get the name of the first cabinet file or header +#if NET48 string directory = Path.GetDirectoryName(file); +#else + string? directory = Path.GetDirectoryName(file); +#endif string noExtension = Path.GetFileNameWithoutExtension(file); - string filenamePattern = Path.Combine(directory, noExtension); - filenamePattern = new Regex(@"\d+$").Replace(filenamePattern, string.Empty); - bool cabinetHeaderExists = File.Exists(Path.Combine(directory, filenamePattern + "1.hdr")); - bool shouldScanCabinet = cabinetHeaderExists - ? file.Equals(Path.Combine(directory, filenamePattern + "1.hdr"), StringComparison.OrdinalIgnoreCase) - : file.Equals(Path.Combine(directory, filenamePattern + "1.cab"), StringComparison.OrdinalIgnoreCase); + bool shouldScanCabinet; + if (directory == null) + { + string filenamePattern = noExtension; + filenamePattern = new Regex(@"\d+$").Replace(filenamePattern, string.Empty); + bool cabinetHeaderExists = File.Exists(filenamePattern + "1.hdr"); + shouldScanCabinet = cabinetHeaderExists + ? file.Equals(filenamePattern + "1.hdr", StringComparison.OrdinalIgnoreCase) + : file.Equals(filenamePattern + "1.cab", StringComparison.OrdinalIgnoreCase); + } + else + { + string filenamePattern = Path.Combine(directory, noExtension); + filenamePattern = new Regex(@"\d+$").Replace(filenamePattern, string.Empty); + bool cabinetHeaderExists = File.Exists(Path.Combine(directory, filenamePattern + "1.hdr")); + shouldScanCabinet = cabinetHeaderExists + ? file.Equals(Path.Combine(directory, filenamePattern + "1.hdr"), StringComparison.OrdinalIgnoreCase) + : file.Equals(Path.Combine(directory, filenamePattern + "1.cab"), StringComparison.OrdinalIgnoreCase); + } // If we have anything but the first file if (!shouldScanCabinet) diff --git a/BinaryObjectScanner.FileType/LDSCRYPT.cs b/BinaryObjectScanner.FileType/LDSCRYPT.cs index 5c2862b1..2d7d9ac4 100644 --- a/BinaryObjectScanner.FileType/LDSCRYPT.cs +++ b/BinaryObjectScanner.FileType/LDSCRYPT.cs @@ -11,7 +11,11 @@ namespace BinaryObjectScanner.FileType public class LDSCRYPT : IDetectable { /// +#if NET48 public string Detect(string file, bool includeDebug) +#else + public string? Detect(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -23,7 +27,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Detect(Stream stream, string file, bool includeDebug) +#else + public string? Detect(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/MPQ.cs b/BinaryObjectScanner.FileType/MPQ.cs index e962e6d7..db6e16c2 100644 --- a/BinaryObjectScanner.FileType/MPQ.cs +++ b/BinaryObjectScanner.FileType/MPQ.cs @@ -13,7 +13,11 @@ namespace BinaryObjectScanner.FileType public class MPQ : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -26,7 +30,11 @@ namespace BinaryObjectScanner.FileType // TODO: Add stream opening support /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { #if NET6_0_OR_GREATER // Not supported for .NET 6.0 due to Windows DLL requirements diff --git a/BinaryObjectScanner.FileType/MicrosoftCAB.cs b/BinaryObjectScanner.FileType/MicrosoftCAB.cs index c5314ebf..8f21c93b 100644 --- a/BinaryObjectScanner.FileType/MicrosoftCAB.cs +++ b/BinaryObjectScanner.FileType/MicrosoftCAB.cs @@ -13,7 +13,11 @@ namespace BinaryObjectScanner.FileType public class MicrosoftCAB : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -25,7 +29,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/MicrosoftLZ.cs b/BinaryObjectScanner.FileType/MicrosoftLZ.cs index cd2b72ec..508ff820 100644 --- a/BinaryObjectScanner.FileType/MicrosoftLZ.cs +++ b/BinaryObjectScanner.FileType/MicrosoftLZ.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class MicrosoftLZ : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/PAK.cs b/BinaryObjectScanner.FileType/PAK.cs index 458d3944..47d8b8ec 100644 --- a/BinaryObjectScanner.FileType/PAK.cs +++ b/BinaryObjectScanner.FileType/PAK.cs @@ -10,7 +10,11 @@ namespace BinaryObjectScanner.FileType public class PAK : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -22,12 +26,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.PAK pak = SabreTools.Serialization.Wrappers.PAK.Create(stream); + var pak = SabreTools.Serialization.Wrappers.PAK.Create(stream); if (pak == null) return null; diff --git a/BinaryObjectScanner.FileType/PFF.cs b/BinaryObjectScanner.FileType/PFF.cs index 7515cc4f..ea869f8a 100644 --- a/BinaryObjectScanner.FileType/PFF.cs +++ b/BinaryObjectScanner.FileType/PFF.cs @@ -10,7 +10,11 @@ namespace BinaryObjectScanner.FileType public class PFF : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -22,12 +26,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.PFF pff = SabreTools.Serialization.Wrappers.PFF.Create(stream); + var pff = SabreTools.Serialization.Wrappers.PFF.Create(stream); if (pff == null) return null; diff --git a/BinaryObjectScanner.FileType/PKZIP.cs b/BinaryObjectScanner.FileType/PKZIP.cs index 44ca12cc..ad8fd1ad 100644 --- a/BinaryObjectScanner.FileType/PKZIP.cs +++ b/BinaryObjectScanner.FileType/PKZIP.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class PKZIP : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { @@ -43,7 +51,13 @@ namespace BinaryObjectScanner.FileType continue; string tempFile = Path.Combine(tempPath, entry.Key); - Directory.CreateDirectory(Path.GetDirectoryName(tempFile)); +#if NET48 + string directoryName = Path.GetDirectoryName(tempFile); +#else + string? directoryName = Path.GetDirectoryName(tempFile); +#endif + if (directoryName != null && !Directory.Exists(directoryName)) + Directory.CreateDirectory(directoryName); entry.WriteToFile(tempFile); } catch (Exception ex) diff --git a/BinaryObjectScanner.FileType/PLJ.cs b/BinaryObjectScanner.FileType/PLJ.cs index 5ab0b6bb..1a21833e 100644 --- a/BinaryObjectScanner.FileType/PLJ.cs +++ b/BinaryObjectScanner.FileType/PLJ.cs @@ -11,7 +11,11 @@ namespace BinaryObjectScanner.FileType public class PLJ : IDetectable { /// +#if NET48 public string Detect(string file, bool includeDebug) +#else + public string? Detect(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -23,7 +27,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Detect(Stream stream, string file, bool includeDebug) +#else + public string? Detect(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/Quantum.cs b/BinaryObjectScanner.FileType/Quantum.cs index 6a7ece44..08f04191 100644 --- a/BinaryObjectScanner.FileType/Quantum.cs +++ b/BinaryObjectScanner.FileType/Quantum.cs @@ -10,7 +10,11 @@ namespace BinaryObjectScanner.FileType public class Quantum : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -22,12 +26,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.Quantum quantum = SabreTools.Serialization.Wrappers.Quantum.Create(stream); + var quantum = SabreTools.Serialization.Wrappers.Quantum.Create(stream); if (quantum == null) return null; diff --git a/BinaryObjectScanner.FileType/RAR.cs b/BinaryObjectScanner.FileType/RAR.cs index 297070f2..bbd836b8 100644 --- a/BinaryObjectScanner.FileType/RAR.cs +++ b/BinaryObjectScanner.FileType/RAR.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class RAR : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/SFFS.cs b/BinaryObjectScanner.FileType/SFFS.cs index b035b346..2d41793f 100644 --- a/BinaryObjectScanner.FileType/SFFS.cs +++ b/BinaryObjectScanner.FileType/SFFS.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class SFFS : IExtractable, IDetectable { /// +#if NET48 public string Detect(string file, bool includeDebug) +#else + public string? Detect(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Detect(Stream stream, string file, bool includeDebug) +#else + public string? Detect(Stream stream, string file, bool includeDebug) +#endif { try { @@ -43,7 +51,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -55,7 +67,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.FileType/SGA.cs b/BinaryObjectScanner.FileType/SGA.cs index e80fafcd..c28cf38d 100644 --- a/BinaryObjectScanner.FileType/SGA.cs +++ b/BinaryObjectScanner.FileType/SGA.cs @@ -13,7 +13,11 @@ namespace BinaryObjectScanner.FileType public class SGA : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -25,12 +29,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.SGA sga = SabreTools.Serialization.Wrappers.SGA.Create(stream); + var sga = SabreTools.Serialization.Wrappers.SGA.Create(stream); if (sga == null) return null; diff --git a/BinaryObjectScanner.FileType/SevenZip.cs b/BinaryObjectScanner.FileType/SevenZip.cs index 0b1539bb..66e74934 100644 --- a/BinaryObjectScanner.FileType/SevenZip.cs +++ b/BinaryObjectScanner.FileType/SevenZip.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class SevenZip : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/TapeArchive.cs b/BinaryObjectScanner.FileType/TapeArchive.cs index 6901831b..2bb883fd 100644 --- a/BinaryObjectScanner.FileType/TapeArchive.cs +++ b/BinaryObjectScanner.FileType/TapeArchive.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class TapeArchive : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/Textfile.cs b/BinaryObjectScanner.FileType/Textfile.cs index 514ebe4a..15b9d992 100644 --- a/BinaryObjectScanner.FileType/Textfile.cs +++ b/BinaryObjectScanner.FileType/Textfile.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class Textfile : IDetectable { /// +#if NET48 public string Detect(string file, bool includeDebug) +#else + public string? Detect(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,7 +28,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Detect(Stream stream, string file, bool includeDebug) +#else + public string? Detect(Stream stream, string file, bool includeDebug) +#endif { // Files can be protected in multiple ways var protections = new List(); @@ -32,7 +40,11 @@ namespace BinaryObjectScanner.FileType try { // Load the current file content +#if NET48 string fileContent = null; +#else + string? fileContent = null; +#endif using (var sr = new StreamReader(stream, Encoding.Default, true, 1024 * 1024, true)) { fileContent = sr.ReadToEnd(); diff --git a/BinaryObjectScanner.FileType/VBSP.cs b/BinaryObjectScanner.FileType/VBSP.cs index 8249ad3c..47d4c78d 100644 --- a/BinaryObjectScanner.FileType/VBSP.cs +++ b/BinaryObjectScanner.FileType/VBSP.cs @@ -10,7 +10,11 @@ namespace BinaryObjectScanner.FileType public class VBSP : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -22,12 +26,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.VBSP vbsp = SabreTools.Serialization.Wrappers.VBSP.Create(stream); + var vbsp = SabreTools.Serialization.Wrappers.VBSP.Create(stream); if (vbsp == null) return null; diff --git a/BinaryObjectScanner.FileType/VPK.cs b/BinaryObjectScanner.FileType/VPK.cs index 7b01ed0e..fd6e37e9 100644 --- a/BinaryObjectScanner.FileType/VPK.cs +++ b/BinaryObjectScanner.FileType/VPK.cs @@ -12,7 +12,11 @@ namespace BinaryObjectScanner.FileType public class VPK : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -24,12 +28,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.VPK vpk = SabreTools.Serialization.Wrappers.VPK.Create(stream); + var vpk = SabreTools.Serialization.Wrappers.VPK.Create(stream); if (vpk == null) return null; diff --git a/BinaryObjectScanner.FileType/WAD.cs b/BinaryObjectScanner.FileType/WAD.cs index 728961bb..586043be 100644 --- a/BinaryObjectScanner.FileType/WAD.cs +++ b/BinaryObjectScanner.FileType/WAD.cs @@ -10,7 +10,11 @@ namespace BinaryObjectScanner.FileType public class WAD : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -22,12 +26,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.WAD wad = SabreTools.Serialization.Wrappers.WAD.Create(stream); + var wad = SabreTools.Serialization.Wrappers.WAD.Create(stream); if (wad == null) return null; diff --git a/BinaryObjectScanner.FileType/XZ.cs b/BinaryObjectScanner.FileType/XZ.cs index 2cc50fd5..4e04c1b0 100644 --- a/BinaryObjectScanner.FileType/XZ.cs +++ b/BinaryObjectScanner.FileType/XZ.cs @@ -11,7 +11,11 @@ namespace BinaryObjectScanner.FileType public class XZ : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -23,7 +27,11 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.FileType/XZP.cs b/BinaryObjectScanner.FileType/XZP.cs index f6d78286..5dfd81fe 100644 --- a/BinaryObjectScanner.FileType/XZP.cs +++ b/BinaryObjectScanner.FileType/XZP.cs @@ -11,7 +11,11 @@ namespace BinaryObjectScanner.FileType public class XZP : IExtractable { /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -23,12 +27,16 @@ namespace BinaryObjectScanner.FileType } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { // Create the wrapper - SabreTools.Serialization.Wrappers.XZP xzp = SabreTools.Serialization.Wrappers.XZP.Create(stream); + var xzp = SabreTools.Serialization.Wrappers.XZP.Create(stream); if (xzp == null) return null; diff --git a/BinaryObjectScanner.GameEngine/BinaryObjectScanner.GameEngine.csproj b/BinaryObjectScanner.GameEngine/BinaryObjectScanner.GameEngine.csproj index f036a0bb..da4d03ba 100644 --- a/BinaryObjectScanner.GameEngine/BinaryObjectScanner.GameEngine.csproj +++ b/BinaryObjectScanner.GameEngine/BinaryObjectScanner.GameEngine.csproj @@ -21,7 +21,6 @@ - diff --git a/BinaryObjectScanner.Interfaces/BinaryObjectScanner.Interfaces.csproj b/BinaryObjectScanner.Interfaces/BinaryObjectScanner.Interfaces.csproj index 22d4dd98..e6cc807a 100644 --- a/BinaryObjectScanner.Interfaces/BinaryObjectScanner.Interfaces.csproj +++ b/BinaryObjectScanner.Interfaces/BinaryObjectScanner.Interfaces.csproj @@ -19,8 +19,12 @@ true + + enable + + - + diff --git a/BinaryObjectScanner.Interfaces/IDetectable.cs b/BinaryObjectScanner.Interfaces/IDetectable.cs index 56ebd3b5..8ff976d8 100644 --- a/BinaryObjectScanner.Interfaces/IDetectable.cs +++ b/BinaryObjectScanner.Interfaces/IDetectable.cs @@ -14,7 +14,11 @@ namespace BinaryObjectScanner.Interfaces /// True to include debug data, false otherwise /// Detected file or protection type, null on error /// Ideally, this should just point to the other detect implementation. +#if NET48 string Detect(string file, bool includeDebug); +#else + string? Detect(string file, bool includeDebug); +#endif /// /// Check if a stream is detected as this file type @@ -23,6 +27,10 @@ namespace BinaryObjectScanner.Interfaces /// Path to the input file /// True to include debug data, false otherwise /// Detected file or protection type, null on error +#if NET48 string Detect(Stream stream, string file, bool includeDebug); +#else + string? Detect(Stream stream, string file, bool includeDebug); +#endif } } diff --git a/BinaryObjectScanner.Interfaces/IExtractable.cs b/BinaryObjectScanner.Interfaces/IExtractable.cs index 3c3484b2..fc87caae 100644 --- a/BinaryObjectScanner.Interfaces/IExtractable.cs +++ b/BinaryObjectScanner.Interfaces/IExtractable.cs @@ -16,7 +16,11 @@ namespace BinaryObjectScanner.Interfaces /// True to include debug data, false otherwise /// Path to extracted files, null on error /// Ideally, this should just point to the other extract implementation. +#if NET48 string Extract(string file, bool includeDebug); +#else + string? Extract(string file, bool includeDebug); +#endif /// /// Extract a stream to a temporary path, if possible @@ -25,6 +29,10 @@ namespace BinaryObjectScanner.Interfaces /// Path to the input file /// True to include debug data, false otherwise /// Path to extracted files, null on error +#if NET48 string Extract(Stream stream, string file, bool includeDebug); +#else + string? Extract(Stream stream, string file, bool includeDebug); +#endif } } diff --git a/BinaryObjectScanner.Packer/ASPack.cs b/BinaryObjectScanner.Packer/ASPack.cs index 876ebfb7..b54c0621 100644 --- a/BinaryObjectScanner.Packer/ASPack.cs +++ b/BinaryObjectScanner.Packer/ASPack.cs @@ -51,7 +51,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -63,7 +67,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/AdvancedInstaller.cs b/BinaryObjectScanner.Packer/AdvancedInstaller.cs index db867c5f..1bbbfbc3 100644 --- a/BinaryObjectScanner.Packer/AdvancedInstaller.cs +++ b/BinaryObjectScanner.Packer/AdvancedInstaller.cs @@ -30,7 +30,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -42,7 +46,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/Armadillo.cs b/BinaryObjectScanner.Packer/Armadillo.cs index 389da3e9..f92edc22 100644 --- a/BinaryObjectScanner.Packer/Armadillo.cs +++ b/BinaryObjectScanner.Packer/Armadillo.cs @@ -40,7 +40,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -52,7 +56,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/AutoPlayMediaStudio.cs b/BinaryObjectScanner.Packer/AutoPlayMediaStudio.cs index 5b5f146e..e690e08f 100644 --- a/BinaryObjectScanner.Packer/AutoPlayMediaStudio.cs +++ b/BinaryObjectScanner.Packer/AutoPlayMediaStudio.cs @@ -34,7 +34,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -46,7 +50,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/BinaryObjectScanner.Packer.csproj b/BinaryObjectScanner.Packer/BinaryObjectScanner.Packer.csproj index 8ef09f73..be6ad22b 100644 --- a/BinaryObjectScanner.Packer/BinaryObjectScanner.Packer.csproj +++ b/BinaryObjectScanner.Packer/BinaryObjectScanner.Packer.csproj @@ -20,13 +20,14 @@ + - + diff --git a/BinaryObjectScanner.Packer/CExe.cs b/BinaryObjectScanner.Packer/CExe.cs index 3df6e360..7bfe83b3 100644 --- a/BinaryObjectScanner.Packer/CExe.cs +++ b/BinaryObjectScanner.Packer/CExe.cs @@ -48,7 +48,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -60,7 +64,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.Packer/EXEStealth.cs b/BinaryObjectScanner.Packer/EXEStealth.cs index 62e3876e..c1f6867d 100644 --- a/BinaryObjectScanner.Packer/EXEStealth.cs +++ b/BinaryObjectScanner.Packer/EXEStealth.cs @@ -75,7 +75,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -87,7 +91,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/EmbeddedExecutable.cs b/BinaryObjectScanner.Packer/EmbeddedExecutable.cs index 035c2764..f96ea6a2 100644 --- a/BinaryObjectScanner.Packer/EmbeddedExecutable.cs +++ b/BinaryObjectScanner.Packer/EmbeddedExecutable.cs @@ -29,7 +29,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -41,7 +45,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.Packer/GenteeInstaller.cs b/BinaryObjectScanner.Packer/GenteeInstaller.cs index f32a1a49..142df93e 100644 --- a/BinaryObjectScanner.Packer/GenteeInstaller.cs +++ b/BinaryObjectScanner.Packer/GenteeInstaller.cs @@ -33,7 +33,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -45,7 +49,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/HyperTechCrackProof.cs b/BinaryObjectScanner.Packer/HyperTechCrackProof.cs index 715a21cf..562b2a34 100644 --- a/BinaryObjectScanner.Packer/HyperTechCrackProof.cs +++ b/BinaryObjectScanner.Packer/HyperTechCrackProof.cs @@ -32,7 +32,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -44,7 +48,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/InnoSetup.cs b/BinaryObjectScanner.Packer/InnoSetup.cs index 82cb0662..6371d392 100644 --- a/BinaryObjectScanner.Packer/InnoSetup.cs +++ b/BinaryObjectScanner.Packer/InnoSetup.cs @@ -58,7 +58,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -70,7 +74,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/InstallAnywhere.cs b/BinaryObjectScanner.Packer/InstallAnywhere.cs index 93fdc30e..5ce4d5c0 100644 --- a/BinaryObjectScanner.Packer/InstallAnywhere.cs +++ b/BinaryObjectScanner.Packer/InstallAnywhere.cs @@ -29,7 +29,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -41,7 +45,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/InstallerVISE.cs b/BinaryObjectScanner.Packer/InstallerVISE.cs index e0a1abab..2c2d9d5c 100644 --- a/BinaryObjectScanner.Packer/InstallerVISE.cs +++ b/BinaryObjectScanner.Packer/InstallerVISE.cs @@ -31,7 +31,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -43,7 +47,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/IntelInstallationFramework.cs b/BinaryObjectScanner.Packer/IntelInstallationFramework.cs index e7ae4587..82ad2a2c 100644 --- a/BinaryObjectScanner.Packer/IntelInstallationFramework.cs +++ b/BinaryObjectScanner.Packer/IntelInstallationFramework.cs @@ -34,7 +34,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -46,7 +50,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/MicrosoftCABSFX.cs b/BinaryObjectScanner.Packer/MicrosoftCABSFX.cs index 6f4f9a3c..7619e0ba 100644 --- a/BinaryObjectScanner.Packer/MicrosoftCABSFX.cs +++ b/BinaryObjectScanner.Packer/MicrosoftCABSFX.cs @@ -49,7 +49,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -61,7 +65,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/NSIS.cs b/BinaryObjectScanner.Packer/NSIS.cs index 17834cac..898f4c1b 100644 --- a/BinaryObjectScanner.Packer/NSIS.cs +++ b/BinaryObjectScanner.Packer/NSIS.cs @@ -33,7 +33,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -45,7 +49,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/NeoLite.cs b/BinaryObjectScanner.Packer/NeoLite.cs index 9d2b2830..fb53f033 100644 --- a/BinaryObjectScanner.Packer/NeoLite.cs +++ b/BinaryObjectScanner.Packer/NeoLite.cs @@ -37,7 +37,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { // TODO: Add extraction if (!File.Exists(file)) @@ -50,7 +54,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/PECompact.cs b/BinaryObjectScanner.Packer/PECompact.cs index 438bda13..0e6e2f36 100644 --- a/BinaryObjectScanner.Packer/PECompact.cs +++ b/BinaryObjectScanner.Packer/PECompact.cs @@ -42,7 +42,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -54,7 +58,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/Petite.cs b/BinaryObjectScanner.Packer/Petite.cs index b673b90c..e990f8e7 100644 --- a/BinaryObjectScanner.Packer/Petite.cs +++ b/BinaryObjectScanner.Packer/Petite.cs @@ -25,7 +25,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -37,7 +41,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/SetupFactory.cs b/BinaryObjectScanner.Packer/SetupFactory.cs index ff50fc51..90d41cb4 100644 --- a/BinaryObjectScanner.Packer/SetupFactory.cs +++ b/BinaryObjectScanner.Packer/SetupFactory.cs @@ -39,7 +39,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -51,7 +55,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/SevenZipSFX.cs b/BinaryObjectScanner.Packer/SevenZipSFX.cs index d0125f68..5a4ca313 100644 --- a/BinaryObjectScanner.Packer/SevenZipSFX.cs +++ b/BinaryObjectScanner.Packer/SevenZipSFX.cs @@ -46,7 +46,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -58,7 +62,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/Shrinker.cs b/BinaryObjectScanner.Packer/Shrinker.cs index 34b9d0a2..9ab2ecd5 100644 --- a/BinaryObjectScanner.Packer/Shrinker.cs +++ b/BinaryObjectScanner.Packer/Shrinker.cs @@ -26,7 +26,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -38,7 +42,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/UPX.cs b/BinaryObjectScanner.Packer/UPX.cs index 505023f5..7f0764b2 100644 --- a/BinaryObjectScanner.Packer/UPX.cs +++ b/BinaryObjectScanner.Packer/UPX.cs @@ -64,7 +64,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -76,7 +80,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Packer/WinRARSFX.cs b/BinaryObjectScanner.Packer/WinRARSFX.cs index 92553d47..5c30bd08 100644 --- a/BinaryObjectScanner.Packer/WinRARSFX.cs +++ b/BinaryObjectScanner.Packer/WinRARSFX.cs @@ -31,7 +31,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -43,7 +47,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.Packer/WinZipSFX.cs b/BinaryObjectScanner.Packer/WinZipSFX.cs index f00069d3..c45e2670 100644 --- a/BinaryObjectScanner.Packer/WinZipSFX.cs +++ b/BinaryObjectScanner.Packer/WinZipSFX.cs @@ -65,7 +65,11 @@ namespace BinaryObjectScanner.Packer // TODO: Find a way to generically detect 2.X versions and improve exact version detection for SFX PE versions bundled with WinZip 11+ /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -77,7 +81,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.Packer/WiseInstaller.cs b/BinaryObjectScanner.Packer/WiseInstaller.cs index b2e5c5ce..57337227 100644 --- a/BinaryObjectScanner.Packer/WiseInstaller.cs +++ b/BinaryObjectScanner.Packer/WiseInstaller.cs @@ -77,7 +77,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -89,7 +93,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { try { diff --git a/BinaryObjectScanner.Packer/dotFuscator.cs b/BinaryObjectScanner.Packer/dotFuscator.cs index 3392f7ab..ef553045 100644 --- a/BinaryObjectScanner.Packer/dotFuscator.cs +++ b/BinaryObjectScanner.Packer/dotFuscator.cs @@ -29,7 +29,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(string file, bool includeDebug) +#else + public string? Extract(string file, bool includeDebug) +#endif { if (!File.Exists(file)) return null; @@ -41,7 +45,11 @@ namespace BinaryObjectScanner.Packer } /// +#if NET48 public string Extract(Stream stream, string file, bool includeDebug) +#else + public string? Extract(Stream stream, string file, bool includeDebug) +#endif { return null; } diff --git a/BinaryObjectScanner.Protection/BinaryObjectScanner.Protection.csproj b/BinaryObjectScanner.Protection/BinaryObjectScanner.Protection.csproj index c605aea5..0a4e437c 100644 --- a/BinaryObjectScanner.Protection/BinaryObjectScanner.Protection.csproj +++ b/BinaryObjectScanner.Protection/BinaryObjectScanner.Protection.csproj @@ -21,12 +21,17 @@ - + + + + + + diff --git a/BinaryObjectScanner.Utilities/BinaryObjectScanner.Utilities.csproj b/BinaryObjectScanner.Utilities/BinaryObjectScanner.Utilities.csproj index 01a6f018..4fa1c9a8 100644 --- a/BinaryObjectScanner.Utilities/BinaryObjectScanner.Utilities.csproj +++ b/BinaryObjectScanner.Utilities/BinaryObjectScanner.Utilities.csproj @@ -19,9 +19,14 @@ true + + enable + + + diff --git a/BinaryObjectScanner.Wrappers/WrapperFactory.cs b/BinaryObjectScanner.Utilities/WrapperFactory.cs similarity index 96% rename from BinaryObjectScanner.Wrappers/WrapperFactory.cs rename to BinaryObjectScanner.Utilities/WrapperFactory.cs index 7dbe5a8e..f8446368 100644 --- a/BinaryObjectScanner.Wrappers/WrapperFactory.cs +++ b/BinaryObjectScanner.Utilities/WrapperFactory.cs @@ -1,12 +1,10 @@ -using System; -using System.IO; -using BinaryObjectScanner.Utilities; +using System.IO; using SabreTools.IO; using SabreTools.Matching; using SabreTools.Serialization.Interfaces; using SabreTools.Serialization.Wrappers; -namespace BinaryObjectScanner.Wrappers +namespace BinaryObjectScanner.Utilities { public static class WrapperFactory { @@ -34,7 +32,7 @@ namespace BinaryObjectScanner.Wrappers //case SupportedFileType.IniFile: return IniFile.Create(data); //case SupportedFileType.InstallShieldArchiveV3: return InstallShieldArchiveV3.Create(data); case SupportedFileType.InstallShieldCAB: return InstallShieldCabinet.Create(data); - //case SupportedFileType.LDSCRYPT: return BinaryObjectScanner.Wrappers.LDSCRYPT.Create(data); + //case SupportedFileType.LDSCRYPT: return LDSCRYPT.Create(data); case SupportedFileType.MicrosoftCAB: return MicrosoftCabinet.Create(data); //case SupportedFileType.MicrosoftLZ: return MicrosoftLZ.Create(data); //case SupportedFileType.MPQ: return MoPaQ.Create(data); diff --git a/BinaryObjectScanner.Wrappers/BinaryObjectScanner.Wrappers.csproj b/BinaryObjectScanner.Wrappers/BinaryObjectScanner.Wrappers.csproj deleted file mode 100644 index 94607576..00000000 --- a/BinaryObjectScanner.Wrappers/BinaryObjectScanner.Wrappers.csproj +++ /dev/null @@ -1,40 +0,0 @@ - - - - - net48;net6.0;net7.0 - win-x86;win-x64;linux-x64;osx-x64 - 2.8 - true - - - Matt Nadareski - BurnOutSharp - Copyright (c)2022-2023 Matt Nadareski - https://github.com/SabreTools/ - https://github.com/mnadareski/BurnOutSharp - git - MIT - true - true - - - - enable - - - - - - - - - - - - - - - - - diff --git a/BurnOutSharp.sln b/BurnOutSharp.sln index f3110ed4..bf691014 100644 --- a/BurnOutSharp.sln +++ b/BurnOutSharp.sln @@ -16,8 +16,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution README.md = README.md EndProjectSection EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BinaryObjectScanner.Wrappers", "BinaryObjectScanner.Wrappers\BinaryObjectScanner.Wrappers.csproj", "{35BD489F-E58D-45DD-9929-DC4B32414750}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "psxt001z", "psxt001z\psxt001z.csproj", "{D9574B47-0D6B-445A-97BF-272B5EF9AD3F}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BinaryObjectScanner.Utilities", "BinaryObjectScanner.Utilities\BinaryObjectScanner.Utilities.csproj", "{3C1D1FE2-7E7C-4EC1-96B1-FE68B73282CD}" @@ -48,10 +46,6 @@ Global {88735BA2-778D-4192-8EB2-FFF6843719E2}.Debug|Any CPU.Build.0 = Debug|Any CPU {88735BA2-778D-4192-8EB2-FFF6843719E2}.Release|Any CPU.ActiveCfg = Release|Any CPU {88735BA2-778D-4192-8EB2-FFF6843719E2}.Release|Any CPU.Build.0 = Release|Any CPU - {35BD489F-E58D-45DD-9929-DC4B32414750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {35BD489F-E58D-45DD-9929-DC4B32414750}.Debug|Any CPU.Build.0 = Debug|Any CPU - {35BD489F-E58D-45DD-9929-DC4B32414750}.Release|Any CPU.ActiveCfg = Release|Any CPU - {35BD489F-E58D-45DD-9929-DC4B32414750}.Release|Any CPU.Build.0 = Release|Any CPU {D9574B47-0D6B-445A-97BF-272B5EF9AD3F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D9574B47-0D6B-445A-97BF-272B5EF9AD3F}.Debug|Any CPU.Build.0 = Debug|Any CPU {D9574B47-0D6B-445A-97BF-272B5EF9AD3F}.Release|Any CPU.ActiveCfg = Release|Any CPU diff --git a/BurnOutSharp/BurnOutSharp.csproj b/BurnOutSharp/BurnOutSharp.csproj index b257ff9a..e203ffbe 100644 --- a/BurnOutSharp/BurnOutSharp.csproj +++ b/BurnOutSharp/BurnOutSharp.csproj @@ -64,10 +64,6 @@ runtime; build; native; contentfiles; analyzers; buildtransitive all - - runtime; build; native; contentfiles; analyzers; buildtransitive - all - runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/BurnOutSharp/Scanner.cs b/BurnOutSharp/Scanner.cs index ab9c21ca..9cd9b0a8 100644 --- a/BurnOutSharp/Scanner.cs +++ b/BurnOutSharp/Scanner.cs @@ -8,7 +8,6 @@ using System.Threading.Tasks; using BinaryObjectScanner.FileType; using BinaryObjectScanner.Interfaces; using BinaryObjectScanner.Utilities; -using BinaryObjectScanner.Wrappers; using SabreTools.Serialization.Wrappers; using static BinaryObjectScanner.Utilities.Dictionary; diff --git a/Test/Printer.cs b/Test/Printer.cs index dcb1ca10..2868bd49 100644 --- a/Test/Printer.cs +++ b/Test/Printer.cs @@ -2,7 +2,6 @@ using System; using System.IO; using System.Text; using BinaryObjectScanner.Utilities; -using BinaryObjectScanner.Wrappers; using SabreTools.IO; using SabreTools.Serialization.Interfaces; using SabreTools.Serialization.Wrappers; diff --git a/Test/Test.csproj b/Test/Test.csproj index 0b084de5..022e256c 100644 --- a/Test/Test.csproj +++ b/Test/Test.csproj @@ -11,7 +11,6 @@ -