Заглушка Assembly_Load

137
18 февраля 2018, 23:53

Подскажите что делает данная функция? В 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;
        }
READ ALSO
цикличность срабатывания .load

цикличность срабатывания .load

В начале загрузки страницы нужно получить данные в js из php:

209
Имитировать клик и вставку ссылки на форму input с помощью javascript

Имитировать клик и вставку ссылки на форму input с помощью javascript

Хочу имитировать клик и вставку ссылки в форму input с помощью javascript

232
ES6: Что дают промисы?

ES6: Что дают промисы?

Думаю, я что-то недопонял с промисамиВроде как промис - это средство для организации асинхронного кода

217
Какие есть способы узнать, из какой функции был вызов, помимо Function.caller?

Какие есть способы узнать, из какой функции был вызов, помимо Function.caller?

В приведённом ниже коде machineMonthNumber - это номер месяца от 0 до 11 (в отличие от humanMonthNumber - номер месяца от 1 до 12)Функция validateMachineMonthNumber(machineMonthNumber),...

231