/[RomCheater]/trunk/RomCheater.PluginFramework/Core/ConfigPlugin.cs
ViewVC logotype

Diff of /trunk/RomCheater.PluginFramework/Core/ConfigPlugin.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 150 by william, Sun May 27 23:59:22 2012 UTC revision 174 by william, Mon May 28 09:21:52 2012 UTC
# Line 1  Line 1 
1  #define DISABLE_VERBOSE_LOGGING_FOR_PERFORMANCE_BOOST // when defined will disable verbose logging for performance speed-up  //#define DISABLE_VERBOSE_LOGGING_FOR_PERFORMANCE_BOOST // when defined will disable verbose logging for performance speed-up
2    //#define DISALLOW_VERBOSE_LOGGING // when defined will disallow verbose logging for performance reasons
3    #define ALLOW_SYSTEM_PROCESSES_TO_BE_INLUCDED // when defined system processes will be included in process list
4  using System;  using System;
5  using System.Collections.Generic;  using System.Collections.Generic;
6  using System.Linq;  using System.Linq;
# Line 27  namespace RomCheater.PluginFramework.Cor Line 29  namespace RomCheater.PluginFramework.Cor
29          }          }
30          private void init()          private void init()
31          {          {
32              loggerflags flags = logger.GetLoggingFlags();  //            loggerflags flags = logger.GetLoggingFlags();
33    
34  #if DISABLE_VERBOSE_LOGGING_FOR_PERFORMANCE_BOOST  //#if DISABLE_VERBOSE_LOGGING_FOR_PERFORMANCE_BOOST
35              ushort performance_flags = flags.Value;  //            ushort performance_flags = flags.Value;
36              if (flags.HasFlag(loggerflags.VERBOSE_DEBUG))  //            if (flags.HasFlag(loggerflags.VERBOSE_DEBUG))
37              {  //            {
38                  performance_flags = (ushort)(performance_flags &~ loggerflags.VERBOSE_DEBUG.Value);  //                performance_flags = (ushort)(performance_flags &~ loggerflags.VERBOSE_DEBUG.Value);
39              }  //            }
40              if (flags.HasFlag(loggerflags.VERBOSE_ERROR))  //            if (flags.HasFlag(loggerflags.VERBOSE_ERROR))
41              {  //            {
42                  performance_flags = (ushort)(performance_flags &~ loggerflags.VERBOSE_ERROR.Value);  //                performance_flags = (ushort)(performance_flags &~ loggerflags.VERBOSE_ERROR.Value);
43              }  //            }
44  #endif  //#endif
45              logger.SetLoggingFlags(performance_flags);  //            logger.SetLoggingFlags(performance_flags);
46    
47              List<ProcContainer> proc_list = new List<ProcContainer>();              List<ProcContainer> proc_list = new List<ProcContainer>();
48              foreach (Process proc in Process.GetProcesses())              foreach (Process proc in Process.GetProcesses())
# Line 50  namespace RomCheater.PluginFramework.Cor Line 52  namespace RomCheater.PluginFramework.Cor
52                  {                  {
53                      bool isSystem = false;                      bool isSystem = false;
54                      string proc_user = ThreadControl.GetProcessOwner(proc.Handle, out isSystem).ToLower();                      string proc_user = ThreadControl.GetProcessOwner(proc.Handle, out isSystem).ToLower();
55    #if !ALLOW_SYSTEM_PROCESSES_TO_BE_INLUCDED
56                      if (isSystem)                      if (isSystem)
57                      {                      {
58    #if !DISALLOW_VERBOSE_LOGGING
59                          logger.VerboseDebug.WriteLine("    not adding process {0} because it is a system process", proc_name);                          logger.VerboseDebug.WriteLine("    not adding process {0} because it is a system process", proc_name);
60    #endif
61                          continue;                          continue;
62                      }                      }
63    #endif
64                      ProcContainer container = null;                      ProcContainer container = null;
65                      try                      try
66                      {                      {
67                          container = new ProcContainer(proc);                          container = new ProcContainer(proc);
68                            #if !DISALLOW_VERBOSE_LOGGING
69                          logger.VerboseDebug.WriteLine("  adding process {0} ", proc_name);                          logger.VerboseDebug.WriteLine("  adding process {0} ", proc_name);
70    #endif
71                          proc_list.Add(container);                          proc_list.Add(container);
72                      }                      }
73                      catch (FileNotFoundException) { }                      catch (FileNotFoundException) { }
74                      catch (Exception ex)                      catch (Exception ex)
75                      {                      {
76                          //throw;                          //throw;
77                            #if !DISALLOW_VERBOSE_LOGGING
78                          logger.VerboseError.WriteLine("    not adding process {0} because it thew an exception [{1}]", proc_name, ex.ToString());                          logger.VerboseError.WriteLine("    not adding process {0} because it thew an exception [{1}]", proc_name, ex.ToString());
79    #endif
80                          //continue;                          //continue;
81                      }                      }
82                  }                  }
# Line 74  namespace RomCheater.PluginFramework.Cor Line 84  namespace RomCheater.PluginFramework.Cor
84                  {                  {
85                      if (!((uint)ex.ErrorCode == 0x80004005))                      if (!((uint)ex.ErrorCode == 0x80004005))
86                      {                      {
87                            #if !DISALLOW_VERBOSE_LOGGING
88                          logger.VerboseError.WriteLine("    not adding process {0} because it thew an exception [{1}]", proc_name, ex.ToString());                          logger.VerboseError.WriteLine("    not adding process {0} because it thew an exception [{1}]", proc_name, ex.ToString());
89    #endif
90                      }                                        }                  
91                      //continue;                      //continue;
92                  }                  }
93                  catch (Exception ex)                  catch (Exception ex)
94                  {                  {
95                        #if !DISALLOW_VERBOSE_LOGGING
96                      logger.VerboseError.WriteLine("    not adding process {0} because it thew an exception [{1}]", proc_name, ex.ToString());                      logger.VerboseError.WriteLine("    not adding process {0} because it thew an exception [{1}]", proc_name, ex.ToString());
97    #endif
98                      //continue;                      //continue;
99                  }                  }
100              }              }
# Line 88  namespace RomCheater.PluginFramework.Cor Line 102  namespace RomCheater.PluginFramework.Cor
102              Predicate<ProcContainer> predicate = new Predicate<ProcContainer>(IsNotValidProcess);              Predicate<ProcContainer> predicate = new Predicate<ProcContainer>(IsNotValidProcess);
103              proc_list.RemoveAll(predicate);              proc_list.RemoveAll(predicate);
104              ValidProcessesForPlugin = proc_list;              ValidProcessesForPlugin = proc_list;
105              logger.SetLoggingFlags(flags); // reset flags              //logger.SetLoggingFlags(flags); // reset flags
106          }          }
107    
108          protected abstract bool IsNotValidProcess(ProcContainer p);          protected abstract bool IsNotValidProcess(ProcContainer p);

Legend:
Removed from v.150  
changed lines
  Added in v.174

  ViewVC Help
Powered by ViewVC 1.1.22