Beispiel #1
0
 /// <summary>
 /// Registers a <see cref="HookProvider{T}"/> to the current <see cref="HookManager"/>.
 /// The registered provider will be able to provide API hooks when <see cref="InstallHooks"/> is called.
 /// </summary>
 /// <param name="hookProvider"></param>
 public void RegisterHookProvider(IHookProvider hookProvider)
 {
     lock (_syncRoot)
         if (!_hookProviders.Contains(hookProvider))
         {
             _hookProviders.Add(hookProvider);
         }
 }
Beispiel #2
0
 internal PatchTask(
     XAP xap,
     IHookProvider hookProvider,
     DeviceType deviceType,
     Action <string> addText,
     Action <string> resetButton
     )
 {
     m_xap          = xap;
     m_hookProvider = hookProvider;
     m_deviceType   = deviceType;
     m_addText      = addText;
     m_resetButton  = resetButton;
 }
Beispiel #3
0
        public AssemblyPatcher(string assemblyPath, IHookProvider hookProvider, DeviceType deviceType, PlatformVersion version)
        {
            AssemblyDefinition def = LoadAssembly(assemblyPath);

            m_assemblyDefinition = def;
            m_assemblyPath = assemblyPath;
            m_hookProvider = hookProvider;
            m_deviceType = deviceType;
            m_version = version;
            // TODO: dependency
            m_codeGenerator = new CustomCodeGenerator();

            InitializeConsoleMethods();

            m_stringTypeReference = m_assemblyDefinition.MainModule.Import(typeof(string));
        }
Beispiel #4
0
        public AssemblyPatcher(string assemblyPath, IHookProvider hookProvider, DeviceType deviceType, PlatformVersion version)
        {
            AssemblyDefinition def = LoadAssembly(assemblyPath);

            m_assemblyDefinition = def;
            m_assemblyPath       = assemblyPath;
            m_hookProvider       = hookProvider;
            m_deviceType         = deviceType;
            m_version            = version;
            // TODO: dependency
            m_codeGenerator = new CustomCodeGenerator();

            InitializeConsoleMethods();

            m_stringTypeReference = m_assemblyDefinition.MainModule.Import(typeof(string));
        }
 /// <summary>
 /// Registers a <see cref="HookProvider{T}"/> to the current <see cref="HookManager"/>.
 /// The registered provider will be able to provide API hooks when <see cref="InstallHooks"/> is called.
 /// </summary>
 /// <param name="hookProvider"></param>
 public void RegisterHookProvider(IHookProvider hookProvider)
 {
   lock (_syncRoot)
     if (!_hookProviders.Contains(hookProvider))
       _hookProviders.Add(hookProvider);
 }