Подскажите что делает данная функция? В c++ не особо,но если пойму что делает сделаю заглушку на C# или DLLIMPORT
bool MonoProcess::DisableAssemblyLoadCallback()
{
/*
* Ref: https://github.com/Unity-Technologies/mono/blob/unity-staging/mono/metadata/assembly.c
*
* => AssemblyLoadHook *assembly_load_hook = NULL;
* AssemblyLoadHook is a global variable that holds all the callbacks that needs to be fired when an assembly is loaded.
*
* Plan is to get an hold of it, null the pointer and restore it after loading our injected assembly.
*/
if (m_OriginalAssemblyLoadPtrVal == NULL)
{
if (m_AssemblyLoadPtr == NULL)
{
auto exportData = m_InnerProcess.modules().GetExport(m_MonoModule, "mono_assembly_invoke_load_hook");
#ifdef USE32
auto assemblyLoadHookRefAddr = exportData->procAddress + 6;
m_AssemblyLoadPtr = m_InnerProcess.memory().Read<int>(assemblyLoadHookRefAddr).result();
#else
auto assemblyLoadHookRefAddr = exportData->procAddress + 13;
int assemblyLoadHookOffset = m_InnerProcess.memory().Read<int>(assemblyLoadHookRefAddr).result();
m_AssemblyLoadPtr = (exportData->procAddress + 17) + assemblyLoadHookOffset;
#endif
}
//Keep the original pointer value so we can restore it.
m_OriginalAssemblyLoadPtrVal = m_InnerProcess.memory().Read<blackbone::ptr_t>(m_AssemblyLoadPtr).result();
//Null the pointer so it doesn't points to existing callback list anymore
m_InnerProcess.memory().Write<blackbone::ptr_t>(m_AssemblyLoadPtr, 0);
return true;
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Хочу имитировать клик и вставку ссылки в форму input с помощью javascript
Думаю, я что-то недопонял с промисамиВроде как промис - это средство для организации асинхронного кода
В приведённом ниже коде machineMonthNumber - это номер месяца от 0 до 11 (в отличие от humanMonthNumber - номер месяца от 1 до 12)Функция validateMachineMonthNumber(machineMonthNumber),...