public SictNaacProcessWirkung[] FürOptimatScritListeNaacProcessWirkungBerecne( SictOptimatScrit OptimatScrit, out bool ListeNaacProcessWirkungGeändert, out bool ListeNaacProcessWirkungVolsctändig) { ListeNaacProcessWirkungGeändert = false; if (null == OptimatScrit) { ListeNaacProcessWirkungVolsctändig = true; return(null); } var VorsclaagListeWirkung = OptimatScrit.VorsclaagListeWirkung; if (null == VorsclaagListeWirkung) { ListeNaacProcessWirkungVolsctändig = true; return(null); } var BisherNaacProcessListeWirkung = OptimatScrit.NaacProcessListeWirkung; var NaacProcessListeWirkungFeelendVorsclaagIdent = new List <Int64>(); var NoiNaacProcessListeWirkung = new List <SictNaacProcessWirkung>(); if (null != VorsclaagListeWirkung) { foreach (var KandidaatVorsclaagWirkung in VorsclaagListeWirkung) { if (null == KandidaatVorsclaagWirkung) { continue; } var KandidaatVorsclaagWirkungIdent = (Int64?)KandidaatVorsclaagWirkung.Ident; if (!KandidaatVorsclaagWirkungIdent.HasValue) { continue; } if (null != BisherNaacProcessListeWirkung) { var BisherNaacProcessWirkung = BisherNaacProcessListeWirkung.FirstOrDefault((Kandidaat) => (null == Kandidaat ? null : Kandidaat.VorsclaagWirkungIdent) == KandidaatVorsclaagWirkungIdent); if (null != BisherNaacProcessWirkung) { // Zu diise Vorsclaag isc scun Wirkung aingetraage. continue; } } SictNaacProcessWirkung ZuVorsclaagNaacProcessWirkung = null; DictVonVorsclaagWirkungIdentZuNaacProcessWirkung.TryGetValue(KandidaatVorsclaagWirkungIdent.Value, out ZuVorsclaagNaacProcessWirkung); if (null != ZuVorsclaagNaacProcessWirkung) { NoiNaacProcessListeWirkung.Add(ZuVorsclaagNaacProcessWirkung); } else { NaacProcessListeWirkungFeelendVorsclaagIdent.Add(KandidaatVorsclaagWirkungIdent.Value); } } } ListeNaacProcessWirkungVolsctändig = NaacProcessListeWirkungFeelendVorsclaagIdent.Count < 1; if (0 < NoiNaacProcessListeWirkung.Count) { ListeNaacProcessWirkungGeändert = true; return(Bib3.Glob.ListeEnumerableAgregiirt( new IEnumerable <SictNaacProcessWirkung>[] { BisherNaacProcessListeWirkung, NoiNaacProcessListeWirkung }).ToArray()); } else { return(BisherNaacProcessListeWirkung); } }
SictNaacProcessWirkung[] ScritWirkungFüüreAus( SictVorsclaagNaacProcessWirkung[] VorsclaagListeWirkung, IntPtr GbsAingaabeWaalZiilProzesWindowHandle) { if (null == VorsclaagListeWirkung) { return(null); } var VorherForegroundWindowHandle = Bib3.Windows.User32.GetForegroundWindow(); SictNaacProcessWirkungTailMausErgeebnis WirkungTailMausErgeebnis = null; var NaacZiilProcessListeWirkung = new SictNaacProcessWirkung[VorsclaagListeWirkung.Length]; for (int VorsclaagWirkungIndex = 0; VorsclaagWirkungIndex < VorsclaagListeWirkung.Length; VorsclaagWirkungIndex++) { var VorsclaagWirkung = VorsclaagListeWirkung[VorsclaagWirkungIndex]; var WirkungBeginZaitMili = Bib3.Glob.StopwatchZaitMikroSictInt() / 1000; System.Exception WirkungException = null; try { var MengeKey = VorsclaagWirkung.MengeWirkungKey; var MausPfaadListeWeegpunktFläce = VorsclaagWirkung.MausPfaadListeWeegpunktFläce; var MausPfaadTasteLinksAin = VorsclaagWirkung.MausPfaadTasteLinksAin; var MausPfaadTasteRectsAin = VorsclaagWirkung.MausPfaadTasteRectsAin; var AingaabeText = VorsclaagWirkung.AingaabeText; bool WirkungNict = false; if (null != MengeKey || null != MausPfaadListeWeegpunktFläce || true == MausPfaadTasteLinksAin || true == MausPfaadTasteRectsAin || !AingaabeText.NullOderLeer()) { if (VorherForegroundWindowHandle != GbsAingaabeWaalZiilProzesWindowHandle) { if (GbsAingaabeEveOnlnAutoWirkungSetForegroundNict) { WirkungNict = true; } else { var VersuucSetForegroundWindowErgeebnis = Bib3.Windows.User32.SetForegroundWindow(GbsAingaabeWaalZiilProzesWindowHandle); if (!VersuucSetForegroundWindowErgeebnis) { WirkungNict = true; } } } } if (!WirkungNict) { var inputSimulator = new WindowsInput.InputSimulator(); var WirkungTailMausDauer = new SictMesungZaitraumAusStopwatch(true); WirkungTailMausErgeebnis = MausWirkungFüüreAus(VorsclaagWirkung, 1, 4); WirkungTailMausDauer.EndeSezeJezt(); if (null != MengeKey) { foreach (var Key in MengeKey) { var MengeModifier = Key.MengeModifier; if (null != MengeModifier) { } else { if (null != Key.MengeKey) { foreach (var KeyKey in Key.MengeKey) { var KeyKeySictInputSimulator = Glob.VonWindowsInputKeyNaacInputSimulatorVirtualKeyCode((System.Windows.Input.Key)KeyKey); inputSimulator.Keyboard.KeyPress(KeyKeySictInputSimulator); } } } } } if (!AingaabeText.NullOderLeer()) { inputSimulator.Keyboard.TextEntry(AingaabeText); } } } catch (System.Exception Exception) { WirkungException = Exception; } finally { var WirkungEndeZaitMili = Bib3.Glob.StopwatchZaitMikroSictInt() / 1000; var WirkungErfolg = ((null == WirkungTailMausErgeebnis) ? true : WirkungTailMausErgeebnis.Erfolg) ?? false; if (null != WirkungTailMausErgeebnis) { if (!(true == WirkungTailMausErgeebnis.Erfolg)) { } } var ExceptionSictJsonAbbild = SictExceptionSictJson.ExceptionSictJson(WirkungException); var NaacZiilProcessWirkung = new SictNaacProcessWirkung( WirkungBeginZaitMili, WirkungEndeZaitMili, VorsclaagWirkung.Ident, WirkungTailMausErgeebnis, WirkungErfolg, ExceptionSictJsonAbbild); NaacZiilProcessListeWirkung[VorsclaagWirkungIndex] = NaacZiilProcessWirkung; } } return(NaacZiilProcessListeWirkung.ToArray()); }