amcus: add proper disable option

This commit is contained in:
Hay1tsme 2023-09-18 03:57:11 -04:00
parent a0050a5fac
commit ced21e32f9
2 changed files with 16 additions and 5 deletions

View File

@ -12,6 +12,7 @@
#include "util/dprintf.h"
// https://dev.s-ul.net/djhackers/bemanitools/-/blob/master/src/main/dinput/device_dinput8.c
static bool is_enable = false;
static HRESULT STDAPICALLTYPE my_CoCreateInstance(
const IID *const rclsid,
@ -46,17 +47,26 @@ HRESULT amcus_hook_init(struct amcus_config *cfg)
return S_OK;
}
is_enable = true;
dprintf("AMCUS: init\n");
hook_table_apply(
NULL,
"ole32.dll",
amcus_hook_syms,
_countof(amcus_hook_syms));
amcus_insert_hooks(NULL);
return S_OK;
}
void amcus_insert_hooks(HMODULE target)
{
if (is_enable) {
hook_table_apply(
target,
"ole32.dll",
amcus_hook_syms,
_countof(amcus_hook_syms));
}
}
static HRESULT STDAPICALLTYPE my_CoCreateInstance(
const IID *const rclsid,
LPUNKNOWN pUnkOuter,

View File

@ -6,6 +6,7 @@
#include "amcus/iauth.h"
HRESULT amcus_hook_init(struct amcus_config *cfg);
void amcus_insert_hooks(HMODULE target);
DEFINE_GUID(
amcus_rclsid,