コード例 #1
0
ファイル: ProcessWatcher.cs プロジェクト: lanicon/MultiRPC
        static void SetupTrigger(Process process, CustomProfile profile)
        {
            //So we don't keep triggering it....
            if (Trigger.ActiveTriggers.Contains(profile.Triggers))
            {
                return;
            }

            profile.Triggers.ShowProfile(true);
            process.EnableRaisingEvents = true;
            process.Exited += (o, args) =>
            {
                profile.Triggers.StopShowingProfile();
                ActiveProcesses.Remove(profile.Triggers.Process);
            };
        }
コード例 #2
0
ファイル: ProcessWatcher.cs プロジェクト: lanicon/MultiRPC
        static bool CheckProcesses(CustomProfile profile)
        {
            if (ActiveProcesses.Contains(profile.Triggers.Process))
            {
                return(false);
            }

            var openProcesses = Process.GetProcessesByName(Path.GetFileNameWithoutExtension(profile.Triggers.Process));

            if (openProcesses.Length > 0)
            {
                SetupTrigger(openProcesses[0], profile);
                ActiveProcesses.Add(profile.Triggers.Process);
                return(true);
            }

            return(false);
        }