private void Injection(UInjector injector, List <string> DLLList) { foreach (var item in DLLList) { if (item.Equals(DLLList.Last())) { switch (Config.InjectionMethod) { case "ManualMap": injector.ManualMapInject(Config.DLLPathes.Find(x => x.Contains(item.Split(new string[] { " | " }, StringSplitOptions.None)[0]))); Utils.PlaySound(); break; case "LoadLibrary": injector.LoadLibraryInject(Config.DLLPathes.Find(x => x.Contains(item.Split(new string[] { " | " }, StringSplitOptions.None)[0]))); Utils.PlaySound(); break; } } else { switch (Config.InjectionMethod) { case "ManualMap": injector.ManualMapInject(Config.DLLPathes.Find(x => x.Contains(item.Split(new string[] { " | " }, StringSplitOptions.None)[0]))); Utils.PlaySound(); break; case "LoadLibrary": injector.LoadLibraryInject(Config.DLLPathes.Find(x => x.Contains(item.Split(new string[] { " | " }, StringSplitOptions.None)[0]))); Utils.PlaySound(); break; } if (Config.InjectionDelay > 0) { Thread.Sleep(Config.InjectionDelay * 1000); } } } }
private void InjectButton_Click(object sender, EventArgs e) { if (ProcessBox.SelectedIndex > -1 && DLL_List.CheckedItems.Count > 0) { UInjector injector = new UInjector(Process.GetProcessesByName(ProcessBox.SelectedItem.ToString().Split(new string[] { " | " }, StringSplitOptions.None)[0]).FirstOrDefault()) { AsyncInjection = true }; switch (Config.AsyncInjection) { case true: Task.Factory.StartNew(() => Injection(injector, DLL_List.CheckedItems.Cast <string>().ToList())); break; case false: Injection(injector, DLL_List.CheckedItems.Cast <string>().ToList()); break; } } }