Я только начал иметь эту проблему только недавно. Проблема возникает, когда я пытаюсь вызвать mono_assembly_load_from_full; это просто ломается. Там нет ошибки, и ничто не возвращается - это просто останавливается. Это может быть связано с размером сборки, но я пытался с сборками менее 10 кб, и это все еще не работает. , и это сработало нормально. Я не знаю, почему это не работает с конкретными собраниями. Я также попробовал новую сборку, которая не работает с кодом, а также старой. Только старый работал. Я связал как работающие, так и неработающие сборки ниже. Вот код, который я использую. И прежде чем кто-то спросит, да, неработающая сборка действительна и загружается, когда я его декомпиляю. Моно функции действительны, и они работали раньше; Это просто не работает с неработающей сборкой сейчас. с. Надеемся, что кто -то еще столкнулся с этой проблемой и нашел решение. Спасибо! < /P>
код инъекции < /p>
Я только начал иметь эту проблему только недавно. Проблема возникает, когда я пытаюсь вызвать mono_assembly_load_from_full; это просто ломается. Там нет ошибки, и ничто не возвращается - это просто останавливается. Это может быть связано с размером сборки, но я пытался с сборками менее 10 кб, и это все еще не работает. , и это сработало нормально. Я не знаю, почему это не работает с конкретными собраниями. Я также попробовал новую сборку, которая не работает с кодом, а также старой. Только старый работал. Я связал как работающие, так и неработающие сборки ниже. Вот код, который я использую. И прежде чем кто-то спросит, да, неработающая сборка действительна и загружается, когда я его декомпиляю. Моно функции действительны, и они работали раньше; Это просто не работает с неработающей сборкой сейчас. с. Надеемся, что кто -то еще столкнулся с этой проблемой и нашел решение. Спасибо! < /P> код инъекции < /p> [code] MonoDomain* mDomain = mFunctions.MonoGetRootDomain(); if (mDomain == nullptr) { printf("[ DllMain ] Failed to get Mono root domain!\n"); return false; }
MonoThread* mThread = mFunctions.MonoThreadAttach(mDomain); if (mThread == nullptr) { printf("[ DllMain ] Failed to attach thread to Mono domain!\n"); return false; }
MonoImageOpenStatus imageStatus; MonoImage* mRawImage = mFunctions.MonoOpenAssemblyFromData((char*)data.data(), data.size(), true, &imageStatus); if (imageStatus != MONO_IMAGE_OK) { printf("[ DllMain ] Failed to load Mono assembly from data.\n"); return false; }