示例#1
0
文件: Hook.cs 项目: zelorun/Deviare2
 private Hook(IntPtr id, string moduleName, string functionName, ISpyManager spyManager)
 {
     Id           = id;
     FunctionName = functionName;
     ModuleName   = moduleName;
     _spyManager  = spyManager;
 }
示例#2
0
文件: Hook.cs 项目: subTee/Deviare2
 private Hook(IntPtr id, string moduleName, string functionName, ISpyManager spyManager)
 {
     Id = id;
     FunctionName = functionName;
     ModuleName = moduleName;
     _spyManager = spyManager;
 }
示例#3
0
 protected ProcessBase(ISpyManager spyManager, int platformBits, string name, string path, Image icon)
 {
     Name = name;
     Path = path;
     SpyManager = spyManager;
     PlatformBits = platformBits;
     Icon = icon;
 }
示例#4
0
 protected ProcessBase(ISpyManager spyManager, int platformBits, string name, string path, Image icon)
 {
     Name         = name;
     Path         = path;
     SpyManager   = spyManager;
     PlatformBits = platformBits;
     Icon         = icon;
 }
示例#5
0
 public ApplicationPresenter(IApplicationView aView, ISpyManager aSpyManager, HookingSettings hookingSettings, int platformBits)
 {
     _processModulesDisplayer = new ProcessModulesDisplayer(this, aView);
     _hookingSettings = hookingSettings;
     _platformBits = platformBits;
     InitializePresenter(aView, aSpyManager);
     InitializeView();
 }
示例#6
0
 public ApplicationPresenter(IApplicationView aView, ISpyManager aSpyManager, HookingSettings hookingSettings, int platformBits)
 {
     _processModulesDisplayer = new ProcessModulesDisplayer(this, aView);
     _hookingSettings         = hookingSettings;
     _platformBits            = platformBits;
     InitializePresenter(aView, aSpyManager);
     InitializeView();
 }
示例#7
0
        private void InitializePresenter(IApplicationView aView, ISpyManager aSpyManager)
        {
            _selectedProcesses = Enumerable.Empty <IProcess>();
            _selectedFunctions = Enumerable.Empty <Function>();
            _view       = aView;
            _spyManager = aSpyManager;


            _hookLoader = new HookLoader(_hookingSettings, FilterProcessesToApplyHookingSettingsOn, AddHookForRunningProcess);

            InitializeProcessHandlers();

            _spyManager.ProcessStartedHandler    = ProcessStartedHandler;
            _spyManager.ProcessTerminatedHandler = ProcessTerminatedHandler;
            _spyManager.FunctionCalledHandler    = FunctionCalledHandler;
            _spyManager.HookStateChangedHandler  = HookStateChangedHandler;
            _spyManager.AgentLoadHandler         = AgentLoadHandler;
        }
示例#8
0
        public static IRunningProcess From(NktProcess aProcess, ISpyManager spyManager)
        {
            var modulePathByNameAndProcess = new Dictionary<int, string>();

            if (aProcess.PlatformBits > 0 && aProcess.PlatformBits <= IntPtr.Size * 8)
            {
                var processModules = aProcess.Modules();
                if (processModules != null)
                    processModules.CollectAll().ForEach(m =>
                                                            {
                                                                var moduleKey = (m.Name + aProcess.Id).GetHashCode();
                                                                if (!modulePathByNameAndProcess.ContainsKey(moduleKey))
                                                                    modulePathByNameAndProcess.Add(moduleKey, m.Path);
                                                            });
            }

            return new RunningProcess(aProcess.Id, aProcess.Name, aProcess.Icon(), spyManager, aProcess.Path, aProcess.PlatformBits, modulePathByNameAndProcess);
        }
示例#9
0
        public static IRunningProcess From(NktProcess aProcess, ISpyManager spyManager)
        {
            var modulePathByNameAndProcess = new Dictionary <int, string>();

            if (aProcess.PlatformBits > 0 && aProcess.PlatformBits <= IntPtr.Size * 8)
            {
                var processModules = aProcess.Modules();
                if (processModules != null)
                {
                    processModules.CollectAll().ForEach(m =>
                    {
                        var moduleKey = (m.Name + aProcess.Id).GetHashCode();
                        if (!modulePathByNameAndProcess.ContainsKey(moduleKey))
                        {
                            modulePathByNameAndProcess.Add(moduleKey, m.Path);
                        }
                    });
                }
            }

            return(new RunningProcess(aProcess.Id, aProcess.Name, aProcess.Icon(), spyManager, aProcess.Path, aProcess.PlatformBits, modulePathByNameAndProcess));
        }
示例#10
0
        //private IEnumerable<Module> _modules;

        #endregion

        #region Instance Creation

        public ProcessToBeHookedOnStart(string aPath, ISpyManager aSpyManager, int platformBits)
            : base(aSpyManager, platformBits, System.IO.Path.GetFileName(aPath), aPath, ProcessIcon.IconFrom(aPath))
        {
        }
        //private IEnumerable<Module> _modules;

        #endregion

        #region Instance Creation

        public ProcessToBeHookedOnStart(string aPath, ISpyManager aSpyManager, int platformBits)
            : base(aSpyManager, platformBits, System.IO.Path.GetFileName(aPath), aPath, ProcessIcon.IconFrom(aPath))
        {
        }
示例#12
0
 public DisplayHookStateHandler(IApplicationView aView, ISpyManager aSpyManager)
 {
     _view       = aView;
     _spyManager = aSpyManager;
 }
示例#13
0
 public static Module From(NktModule module, IRunningProcess aProcess, ISpyManager aSpyManager)
 {
     return(new RunningModule(module.Path, module.Name, module.BaseAddress, aProcess, aSpyManager));
 }
示例#14
0
文件: Module.cs 项目: subTee/Deviare2
 public static Module From(NktModule module, IRunningProcess aProcess, ISpyManager aSpyManager)
 {
     return new RunningModule(module.Path, module.Name, module.BaseAddress, aProcess, aSpyManager);
 }
示例#15
0
 public RunningProcess(int id, string name, Image icon, ISpyManager spyManager, string path, int platformBits)
     : base(spyManager, platformBits, name, path, icon)
 {
     Id = id;
 }
示例#16
0
 public RunningModule(string path, string name, IntPtr baseAddress, IRunningProcess process, ISpyManager aSpyManager)
     : base(path, name, baseAddress)
 {
     _process    = process;
     _spyManager = aSpyManager;
 }
示例#17
0
 public RunningModule(string path, string name, IntPtr baseAddress, IRunningProcess process, ISpyManager aSpyManager)
     : base(path, name, baseAddress)
 {
     _process = process;
     _spyManager = aSpyManager;
 }
 public DisplayStartupProcessesHandler(IApplicationView aView, ISpyManager spyManager)
 {
     _view       = aView;
     _spyManager = spyManager;
 }
示例#19
0
文件: Hook.cs 项目: zelorun/Deviare2
 public static Hook From(NktHook nktHook, ISpyManager aSyManager)
 {
     return(new Hook(nktHook.Id, nktHook.ModuleName(), nktHook.FunctionNameWithoutModule(), aSyManager));
 }
示例#20
0
 private RunningProcess(int id, string name, Image icon, ISpyManager spyManager, string path, int platformBits, Dictionary <int, string> modulePathByNameAndProcess)
     : base(spyManager, platformBits, name, path, icon)
 {
     Id = id;
     _modulePathByNameAndProcess = modulePathByNameAndProcess;
 }
示例#21
0
文件: Hook.cs 项目: subTee/Deviare2
 public static Hook From(NktHook nktHook, ISpyManager aSyManager)
 {
     return new Hook(nktHook.Id, nktHook.ModuleName(), nktHook.FunctionNameWithoutModule(), aSyManager);
 }
示例#22
0
 public RunningProcess(int id, string name, Image icon, ISpyManager spyManager, string path, int platformBits)
     : base(spyManager, platformBits, name, path, icon)
 {
     Id = id;
 }
示例#23
0
        private void InitializePresenter(IApplicationView aView, ISpyManager aSpyManager)
        {
            _selectedProcesses = Enumerable.Empty<IProcess>();
            _selectedFunctions = Enumerable.Empty<Function>();
            _view = aView;
            _spyManager = aSpyManager;


            _hookLoader = new HookLoader(_hookingSettings, FilterProcessesToApplyHookingSettingsOn, AddHookForRunningProcess);

            InitializeProcessHandlers();

            _spyManager.ProcessStartedHandler = ProcessStartedHandler;
            _spyManager.ProcessTerminatedHandler = ProcessTerminatedHandler;
            _spyManager.FunctionCalledHandler = FunctionCalledHandler;
            _spyManager.HookStateChangedHandler = HookStateChangedHandler;
            _spyManager.AgentLoadHandler = AgentLoadHandler;
        }
示例#24
0
 public static IEnumerable<IRunningProcess> From(IEnumerable<NktProcess> expectedRunningProcesses, ISpyManager spyManager)
 {
     return expectedRunningProcesses.Where(p => p.PlatformBits > 0 && p.PlatformBits <= IntPtr.Size * 8).Select(process => From(process, spyManager)).ToArray();
 }
示例#25
0
 private RunningProcess(int id, string name, Image icon, ISpyManager spyManager, string path, int platformBits, Dictionary<int, string> modulePathByNameAndProcess)
     : base(spyManager, platformBits, name, path, icon)
 {
     Id = id;
     _modulePathByNameAndProcess = modulePathByNameAndProcess;
 }
示例#26
0
 public static IEnumerable <IRunningProcess> From(IEnumerable <NktProcess> expectedRunningProcesses, ISpyManager spyManager)
 {
     return(expectedRunningProcesses.Where(p => p.PlatformBits > 0 && p.PlatformBits <= IntPtr.Size * 8).Select(process => From(process, spyManager)).ToArray());
 }