From 4b49575f02624688b9a12918c1a11b6b270b1b73 Mon Sep 17 00:00:00 2001 From: clragon Date: Sun, 28 Oct 2018 20:15:09 +0100 Subject: [PATCH] added all files --- .gitignore/.gitignore | 2 +- ExeToBat.sln | 25 + ExeToBat/App.config | 6 + ExeToBat/BatGen.cs | 627 ++++++++++++++++++ ExeToBat/ExeToBat.csproj | 53 ++ ExeToBat/Properties/AssemblyInfo.cs | 36 + ExeToBat/bin/Debug/ExeToBat.exe | Bin 0 -> 17920 bytes ExeToBat/bin/Debug/ExeToBat.exe.config | 6 + ExeToBat/bin/Debug/ExeToBat.pdb | Bin 0 -> 42496 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6842 bytes .../ExeToBat.csproj.CoreCompileInputs.cache | 1 + .../ExeToBat.csproj.FileListAbsolute.txt | 7 + .../ExeToBat.csprojAssemblyReference.cache | Bin 0 -> 8077 bytes ExeToBat/obj/Debug/ExeToBat.exe | Bin 0 -> 17920 bytes ExeToBat/obj/Debug/ExeToBat.pdb | Bin 0 -> 42496 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_5937a670-0e60-4077-877b-f7221da3dda1.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 18 files changed, 762 insertions(+), 1 deletion(-) create mode 100644 ExeToBat.sln create mode 100644 ExeToBat/App.config create mode 100644 ExeToBat/BatGen.cs create mode 100644 ExeToBat/ExeToBat.csproj create mode 100644 ExeToBat/Properties/AssemblyInfo.cs create mode 100644 ExeToBat/bin/Debug/ExeToBat.exe create mode 100644 ExeToBat/bin/Debug/ExeToBat.exe.config create mode 100644 ExeToBat/bin/Debug/ExeToBat.pdb create mode 100644 ExeToBat/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 ExeToBat/obj/Debug/ExeToBat.csproj.CoreCompileInputs.cache create mode 100644 ExeToBat/obj/Debug/ExeToBat.csproj.FileListAbsolute.txt create mode 100644 ExeToBat/obj/Debug/ExeToBat.csprojAssemblyReference.cache create mode 100644 ExeToBat/obj/Debug/ExeToBat.exe create mode 100644 ExeToBat/obj/Debug/ExeToBat.pdb create mode 100644 ExeToBat/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 ExeToBat/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs create mode 100644 ExeToBat/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs diff --git a/.gitignore/.gitignore b/.gitignore/.gitignore index 3e759b7..4780c83 100644 --- a/.gitignore/.gitignore +++ b/.gitignore/.gitignore @@ -25,7 +25,7 @@ bld/ [Ll]og/ # Visual Studio 2015/2017 cache/options directory -.vs/ +.vs # Uncomment if you have tasks that create the project's static files in wwwroot #wwwroot/ diff --git a/ExeToBat.sln b/ExeToBat.sln new file mode 100644 index 0000000..24ea6f9 --- /dev/null +++ b/ExeToBat.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28010.2036 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExeToBat", "ExeToBat\ExeToBat.csproj", "{04F45237-23C8-4EE6-B61C-6C47B9979A4B}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {04F45237-23C8-4EE6-B61C-6C47B9979A4B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {04F45237-23C8-4EE6-B61C-6C47B9979A4B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {04F45237-23C8-4EE6-B61C-6C47B9979A4B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {04F45237-23C8-4EE6-B61C-6C47B9979A4B}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {4AA99DAC-6B37-42AF-8FB7-8394329BD79A} + EndGlobalSection +EndGlobal diff --git a/ExeToBat/App.config b/ExeToBat/App.config new file mode 100644 index 0000000..731f6de --- /dev/null +++ b/ExeToBat/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ExeToBat/BatGen.cs b/ExeToBat/BatGen.cs new file mode 100644 index 0000000..4c9cfb0 --- /dev/null +++ b/ExeToBat/BatGen.cs @@ -0,0 +1,627 @@ +using System; +using System.IO; +using System.Collections.Generic; +using System.Linq; + +namespace ExeToBat +{ + static class Generator + { + public const int chunk = 8000; + + public static List Sources = new List(); + + static void Main(string[] args) + { + MainMenu(); + } + + static void MainMenu() + { + List options = new List { "Files", "Generate" }; + + void DisplayTitle(List Options) + { + Console.WriteLine("ExeToBat > Main"); + } + + void DisplayOption(List Options, string o, int index, int i) + { + Console.WriteLine("[{0}] {1}", i, o); + } + + bool ChoiceMethod(List Options, int index) + { + switch (Options[index]) + { + case var i when i.Equals("Files"): + ChooseSource(); + break; + + case var i when i.Equals("Generate"): + BuildBat(Sources, "output.bat"); + break; + + default: + ResetInput(); + break; + } + return false; + } + + ListToMenu(options, DisplayTitle, DisplayOption, ChoiceMethod, true, "Exit"); + } + + static void ChooseSource() + { + void DisplayTitle(List sources) + { + Console.WriteLine("ExeToBat > Main > Files"); + Console.WriteLine("[{0}] ({1})", Convert.ToString(0).PadLeft(Convert.ToString(sources.Count).Length, ' '), "Add Files"); + } + + void DisplayOption(List sources, SourceFile source, int index, int i) + { + Console.WriteLine("[{0}] {1}", Convert.ToString(i).PadLeft(Convert.ToString(sources.Count).Length, ' '), Path.GetFileName(source.File)); + } + + bool ZeroMethod() + { + AddSource(); + return false; + } + + bool ChoiceMethod(List sources, int index) + { + ManageSource(sources[index]); + return false; + } + + List UpdateObjects(List sources) + { + return Sources; + } + + ListToMenu(Sources, DisplayTitle, DisplayOption, ChoiceMethod, ZeroMethod, UpdateObjects); + } + + static void AddSource() + { + string input = ""; + bool IsInputValid = false; + while (!IsInputValid) + { + + Console.Clear(); + Console.WriteLine("ExeToBat > Main > Files > Add"); + Console.Write("\n"); + Console.Write("{0}> ", "File/Folder"); + input = Console.ReadLine(); + + input.Trim(); + input = input.Replace("\"", ""); + if (!string.IsNullOrEmpty(input)) + { + switch (input) + { + case var i when Directory.Exists(input): + IsInputValid = true; + foreach (string file in Directory.GetFiles(input)) + { + Sources.Add(new SourceFile(file)); + } + break; + + case var i when File.Exists(input): + IsInputValid = true; + Sources.Add(new SourceFile(input)); + break; + + default: + ResetInput(); + break; + } + } + else + { + IsInputValid = true; + } + } + } + + static void ManageSource(SourceFile source) + { + List options = new List { "Edit", "Position", "Delete" }; + + void DisplayTitle(List Options) + { + Console.WriteLine("ExeToBat > Main > Files > {0}", Path.GetFileName(source.File)); + } + + void DisplayOption(List Options, string o, int index, int i) + { + Console.WriteLine("[{0}] {1}", i, o); + } + + bool ChoiceMethod(List Options, int index) + { + switch (Options[index]) + { + case var i when i.Equals("Edit"): + ModifySource(source); + break; + + case var i when i.Equals("Position"): + EditPosition(source); + break; + + case var i when i.Equals("Delete"): + Sources.Remove(source); + break; + + default: + ResetInput(); + break; + } + return false; + } + + ListToMenu(options, DisplayTitle, DisplayOption, ChoiceMethod, true, "Exit"); + } + + static void ModifySource(SourceFile source) + { + + List options = new List { "File", "Execute after extraction", "Extraction directory", "Parameters" }; + + Dictionary ValueMap = new Dictionary + { + { "File", "File" }, + { "Execute after extraction", "Execute" }, + { "Extraction directory", "Directory" }, + { "Parameters", "Parameters" }, + }; + + void DisplayTitle(List Options) + { + Console.WriteLine("ExeToBat > Main > Files > {0} > Edit", Path.GetFileName(source.File)); + } + + int MaxLength = options.Select(x => x.Length).Max(); + void DisplayOption(List Options, string o, int index, int i) + { + Console.WriteLine("[{0}] {1} | {2}", i, o.PadRight(MaxLength, ' '), source.GetType().GetProperty(ValueMap[o]).GetValue(source).ToString()); + } + + bool ChoiceMethod(List Options, int index) + { + switch (Options[index]) + { + case var i when i.Equals("File"): + + break; + + case var i when i.Equals("Execute after extraction"): + source.Execute = !source.Execute; + break; + + case var i when i.Equals("Extraction directory"): + EditExtraction(source); + break; + + case var i when i.Equals("Parameters"): + EditParameters(source); + break; + + default: + ResetInput(); + break; + } + return false; + } + + ListToMenu(options, DisplayTitle, DisplayOption, ChoiceMethod); + } + + static void EditExtraction(SourceFile source) + { + string input = ""; + bool IsInputValid = false; + while (!IsInputValid) + { + Console.Clear(); + Console.WriteLine("ExeToBat > Main > Files > {0} > Edit > Extraction", Path.GetFileName(source.File)); + Console.Write("\n"); + Console.WriteLine("Documentation: "); + Console.WriteLine("https://ss64.com/nt/syntax-variables.html"); + Console.WriteLine("https://ss64.com/nt/syntax-args.html"); + Console.Write("\n"); + Console.Write("{0}> ", "Directory"); + input = Console.ReadLine(); + + input.Trim(); + if (!string.IsNullOrEmpty(input)) + { + source.Directory = input; + IsInputValid = true; + } + else + { + IsInputValid = true; + } + } + } + + static void EditParameters(SourceFile source) + { + string input = ""; + bool IsInputValid = false; + while (!IsInputValid) + { + Console.Clear(); + Console.WriteLine("ExeToBat > Main > Files > {0} > Edit > Parameters", Path.GetFileName(source.File)); + Console.Write("\n"); + Console.Write("{0}> ", "Parameters"); + input = Console.ReadLine(); + + input.Trim(); + if (!string.IsNullOrEmpty(input)) + { + source.Parameters = input; + IsInputValid = true; + } + else + { + IsInputValid = true; + } + } + } + + static void EditPosition(SourceFile source) + { + string input = ""; + int index = -1; + bool IsInputValid = false; + while (!IsInputValid) + { + Console.Clear(); + Console.WriteLine("ExeToBat > Main > Files > {0} > Position : {1}", Path.GetFileName(source.File), Sources.IndexOf(source)); + + Console.Write("\n"); + Console.Write("{0}> ", "New index"); + input = Console.ReadLine(); + + if (int.TryParse(input, out index)) + { + if (index < Sources.Count) + { + Sources.Remove(source); + Sources.Insert(index, source); + IsInputValid = true; + } + else + { + ResetInput(); + } + } + else + { + if (string.IsNullOrEmpty(input)) + { + IsInputValid = true; + } + else + { + ResetInput(); + } + } + } + } + + static void BuildBat(List sources, string outputFile) + { + Console.Clear(); + Console.WriteLine("ExeToBat > Main > Generate"); + + if(Sources.Any()) + { + using (StreamWriter writer = new StreamWriter(outputFile)) + { + Console.WriteLine("[ Writing ] basic batch structure..."); + writer.WriteLine("@echo off"); + writer.WriteLine(":: Auto-generated batch file by ExeToBat ::"); + writer.WriteLine(""); + + foreach (SourceFile source in sources) + { + + /* + byte[] fileBytes = File.ReadAllBytes(fileString); + string fileBase64 = Convert.ToBase64String(fileBytes); + List fileChunks = fileBase64.Chunks(chunk).ToList(); + */ + + Console.WriteLine("[ Reading ] {0}", source.File); + List fileChunks = Convert.ToBase64String(File.ReadAllBytes(source.File)).Chunks(chunk).ToList(); + string tempFile = Path.Combine("%temp%", source.Resource); + writer.WriteLine("("); + + int pos = 0; + foreach (string part in fileChunks) + { + pos++; + Console.Write("[ Writing ] {0} part {1}/{2}\r", Path.GetFileName(source.File), pos.ToString().PadLeft(fileChunks.Count.ToString().Length, '0'), fileChunks.Count); + writer.WriteLine(string.Format("echo {0}", part)); + } + + Console.WriteLine(); + writer.WriteLine(string.Format(") >> \"{0}\"", tempFile)); + writer.WriteLine(""); + writer.WriteLine(string.Format("certutil -decode \"{0}\" \"{1}\" >nul 2>&1", tempFile, Path.Combine(source.Directory, Path.GetFileName(source.File)))); + writer.WriteLine("del /f /q \"{0}\" >nul 2>&1", tempFile); + writer.WriteLine(""); + if (source.Execute) + { + Console.WriteLine("[ Writing ] execute mechanism"); + writer.WriteLine(string.Format("\"{0}\" {1}", Path.Combine(source.Directory, Path.GetFileName(source.File)), source.Parameters)); + writer.WriteLine(""); + } + writer.FlushAsync(); + Console.WriteLine("[Generated] {0}", Path.GetFileName(source.File)); + } + + Console.WriteLine("Press anything..."); + Console.ReadKey(); + + } + } + else + { + Console.WriteLine("No files specified"); + new System.Threading.ManualResetEvent(false).WaitOne(500); + + } + + + } + + public class SourceFile + { + public string File { get; set; } + public bool Execute { get; set; } = false; + public string Resource { get; set; } = GenTemp(); + public string Directory { get; set; } = "%~dp0"; + public string Parameters { get; set; } = ""; + + public SourceFile(string file) + { + File = file; + } + + static public string GenTemp() + { + return string.Format("{0}{1}{2}", "res_", new Random().Next(1000, 10000), ".b64"); + } + + } + + static string[] Chunks(this string toSplit, int chunkSize) + { + int stringLength = toSplit.Length; + + int chunksRequired = (int)Math.Ceiling(stringLength / (decimal)chunkSize); + var stringArray = new string[chunksRequired]; + + int lengthRemaining = stringLength; + + for (int i = 0; i < chunksRequired; i++) + { + int lengthToUse = Math.Min(lengthRemaining, chunkSize); + int startIndex = chunkSize * i; + stringArray[i] = toSplit.Substring(startIndex, lengthToUse); + + lengthRemaining = lengthRemaining - lengthToUse; + } + + return stringArray; + } + + + public static void ListToMenu(List Objects, Action> DisplayTitle, Action, T, int, int> DisplayOptions, Func, int, bool> ChoiceMethod, bool UserCanAbort = true, string BackString = "Back") + { + ListToMenu(Objects, DisplayTitle, DisplayOptions, ChoiceMethod, () => { ResetInput(); return false; }, (List List) => { return List; }, UserCanAbort, BackString); + } + + public static void ListToMenu(List Objects, Action> DisplayTitle, Action, T, int, int> DisplayOptions, Func, int, bool> ChoiceMethod, Func ZeroMethod, Func, List> UpdateObjects, bool UserCanAbort = true, string BackString = "Back") + { + int index = -1; + string InputString = ""; + bool IsMenuExitPending = false; + while (!IsMenuExitPending) + { + Console.Clear(); + int printedEntries = 0; + Objects = UpdateObjects(Objects); + DisplayTitle(Objects); + if (Objects.Any()) + { + int i = 0; + foreach (T x in Objects) + { + i++; + if (InputString == "") + { + DisplayOptions(Objects, x, i - 1, i); + printedEntries++; + } + else + { + if (Convert.ToString(i).StartsWith(InputString) || Convert.ToString(i) == InputString) + { + DisplayOptions(Objects, x, i - 1, i); + printedEntries++; + } + } + + if (Objects.Count > Console.WindowHeight - 5) + { + if (printedEntries == Console.WindowHeight - 6) + { + Console.WriteLine("[{0}]", ".".PadLeft(Convert.ToString(Objects.Count).Length, '.')); + break; + } + } + else { if (printedEntries == Console.WindowHeight - 5) { break; } } + } + } + + if (UserCanAbort) + { + Console.WriteLine("[{0}] {1}", "q".PadLeft(Convert.ToString(Objects.Count).Length, ' '), BackString); + } + Console.Write("\n"); + + bool IsInputValid = false; + while (!IsInputValid) + { + Console.Write("{0}> {1}", "", InputString); + string input = Console.ReadKey().KeyChar.ToString(); + new System.Threading.ManualResetEvent(false).WaitOne(20); + switch (input) + { + case "q": + if (UserCanAbort) + { + Console.Write("\n"); + IsInputValid = true; + IsMenuExitPending = true; + } + else + { + Console.Write("\n"); + ResetInput(); + } + break; + + case "\b": + if (!(InputString == "")) + { + Console.Write("\b"); + InputString = InputString.Remove(InputString.Length - 1); + } + IsInputValid = true; + break; + + case "\n": + case "\r": + if (InputString != "") + { + index = Convert.ToInt32(InputString) - 1; + InputString = ""; + IsInputValid = true; + if (ChoiceMethod(Objects, index)) + { + IsMenuExitPending = true; + } + } + break; + + default: + Console.Write("\n"); + int choice; + if ((int.TryParse(input, out choice))) + { + if ((InputString == "") && (choice == 0)) + { + IsInputValid = true; + if (ZeroMethod()) + { + IsMenuExitPending = true; + } + } + else + { + if (Convert.ToInt32(InputString + Convert.ToString(choice)) <= Objects.Count) + { + int MatchingItems = 0; + InputString = InputString + Convert.ToString(choice); + for (int i = 0; i < Objects.Count; i++) { if (Convert.ToString(i + 1).StartsWith(InputString) || Convert.ToString(i + 1) == InputString) { MatchingItems++; } } + if ((InputString.Length == Convert.ToString(Objects.Count).Length) || (MatchingItems == 1)) + { + index = Convert.ToInt32(InputString) - 1; + InputString = ""; + IsInputValid = true; + if (ChoiceMethod(Objects, index)) + { + IsMenuExitPending = true; + } + } + else + { + IsInputValid = true; + } + } + else + { + ResetInput(); + } + } + } + else + { + ResetInput(); + } + break; + } + } + } + Console.Clear(); + } + + public static void YesNoMenu(string title, Action Yes, Action No) + { + bool IsInputValid = false; + while (!IsInputValid) + { + Console.Write("{0}? [{1}]> ", title, "Y/N"); + string Input = Console.ReadKey().KeyChar.ToString(); + new System.Threading.ManualResetEvent(false).WaitOne(20); + Console.Write("\n"); + if (string.Equals(Input, "Y", StringComparison.OrdinalIgnoreCase)) + { + IsInputValid = true; + Yes(); + + } + else if (string.Equals(Input, "N", StringComparison.OrdinalIgnoreCase)) + { + IsInputValid = true; + No(); + } + else + { + ResetInput(); + } + } + } + + public static void ResetInput(string error = "Input Invalid") + { + Console.Write(string.Format("[{0}] {1}", "Error", error)); + new System.Threading.ManualResetEvent(false).WaitOne(150); + ClearCurrentConsoleLine(); + Console.SetCursorPosition(0, Console.CursorTop - 1); + ClearCurrentConsoleLine(); + } + + public static void ClearCurrentConsoleLine() + { + int currentLineCursor = Console.CursorTop; + Console.SetCursorPosition(0, Console.CursorTop); + Console.Write(new string(' ', Console.BufferWidth)); + Console.SetCursorPosition(0, currentLineCursor); + } + + } + +} diff --git a/ExeToBat/ExeToBat.csproj b/ExeToBat/ExeToBat.csproj new file mode 100644 index 0000000..fcf647c --- /dev/null +++ b/ExeToBat/ExeToBat.csproj @@ -0,0 +1,53 @@ + + + + + Debug + AnyCPU + {04F45237-23C8-4EE6-B61C-6C47B9979A4B} + Exe + ExeToBat + ExeToBat + v4.6.1 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ExeToBat/Properties/AssemblyInfo.cs b/ExeToBat/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..6af03c8 --- /dev/null +++ b/ExeToBat/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Allgemeine Informationen über eine Assembly werden über die folgenden +// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +// die einer Assembly zugeordnet sind. +[assembly: AssemblyTitle("ExeToBat")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("ExeToBat")] +[assembly: AssemblyCopyright("Copyright © 2018")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly +// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von +// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. +[assembly: ComVisible(false)] + +// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird +[assembly: Guid("04f45237-23c8-4ee6-b61c-6c47b9979a4b")] + +// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +// +// Hauptversion +// Nebenversion +// Buildnummer +// Revision +// +// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +// übernehmen, indem Sie "*" eingeben: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/ExeToBat/bin/Debug/ExeToBat.exe b/ExeToBat/bin/Debug/ExeToBat.exe new file mode 100644 index 0000000000000000000000000000000000000000..aa219253018b565b4ff2415d9c13aa945ea0e213 GIT binary patch literal 17920 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 fytXt#TV=R^GXO~*KkcT+dw( + + + + + \ No newline at end of file diff --git a/ExeToBat/bin/Debug/ExeToBat.pdb b/ExeToBat/bin/Debug/ExeToBat.pdb new file mode 100644 index 0000000000000000000000000000000000000000..7dfdec3648fc4e8a46246cc15fa1b9e82d543342 GIT binary patch literal 42496 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 PE9Y_=$Z6o8Qv?4GnI-`Y literal 0 HcmV?d00001 diff --git a/ExeToBat/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/ExeToBat/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..a196316931f165131e3b3264eded463c317e76c1 GIT binary patch literal 6842 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 PE9Y_=$Z6o8Qv?4GnI-`Y literal 0 HcmV?d00001 diff --git a/ExeToBat/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/ExeToBat/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/ExeToBat/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/ExeToBat/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/ExeToBat/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/ExeToBat/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29