public static void RaiseOnInject(LeagueInstance instance) { if (OnInject != null) { OnInject(instance); } }
public static void PulseTask() { Thread.CurrentThread.IsBackground = true; Log.Info("Injection Task started"); while (true) { try { if (Config.Instance.Install) { var processList = Process.GetProcessesByName("League of Legends"); lock (ActiveInstances) { foreach (var process in processList.Where(p => ActiveInstances.All(i => i.Id != p.Id))) { var instance = new LeagueInstance(process); if (instance.Inject()) { Log.InfoFormat("{0} injected into {1}", Path.GetFileName(Directories.CoreFilePath), instance.Id); } else { Log.WarnFormat("Injection failed {0} - Injection State:{1}", instance.Id, instance.IsInjected); } break; } } } } catch (Exception e) { Log.Warn(e); } Thread.Sleep(3000); } }