Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.IO;
- using System.Diagnostics;
- using System.Windows.Forms;
- namespace uObfuscator.Obfuscator_Engine.Tools
- {
- public static class ILMergeWrapper
- {
- public static void Merge(string baseFile, string[] assemblies)
- {
- string fileName = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) + "\\Microsoft\\ILMerge\\ILMerge.exe";
- if (!File.Exists(fileName))
- return;
- StringBuilder paramBuilder = new StringBuilder();
- paramBuilder.Append("/target:winexe ");
- paramBuilder.Append(string.Format(@"/out:""{0}"" ", baseFile.Remove(baseFile.Length - 4) + "_MERGED.exe"));
- paramBuilder.Append(string.Format(@"""{0}"" ", baseFile));
- foreach (string strName in assemblies)
- paramBuilder.Append(String.Format(@"""{0}"" ", strName));
- Process p = new Process();
- p.StartInfo.CreateNoWindow = false;
- p.StartInfo.Arguments = paramBuilder.ToString().TrimEnd(' ');
- p.StartInfo.FileName = fileName;
- p.Start();
- p.WaitForExit();
- File.Delete(ObfGlobals.asmPath);
- }
- }
- }
Add Comment
Please, Sign In to add comment