Ejemplo n.º 1
0
        public void ApplicationInfoComparingTest()
        {
            ApplicationInfo info1 = new ApplicationInfo {
                Name = "proc1", PPID = 1231, EndTime = DateTime.Now
            };
            ApplicationInfo info2 = new ApplicationInfo {
                Name = "proc1", PPID = 1231
            };

            Assert.IsTrue(ApplicationInfo.AreEqualsByProcess(info1, info2));
            Assert.IsFalse(ApplicationInfo.AreEqual(info1, info2));
        }
Ejemplo n.º 2
0
        private void refreshTimer_Elapsed(object sender, ElapsedEventArgs e)
        {
            ApplicationInfoCollection result = new ApplicationInfoCollection();

            result.AddRange(ProcessMonitor.GetProcesses());
            foreach (ApplicationInfo info in this.CollectedInfo)
            {
                ApplicationInfo running = result
                                          .FirstOrDefault(item => ApplicationInfo.AreEqualsByProcess(item, info));
                if (running == null)
                {
                    info.IsRunning = false;
                }
            }
            this.storage.CurrentState.MergeWith(result);
        }