
Быстрый поиск
Введите фрагмент названия статьи для поиска

Runtime error R6002 floating point not loaded
13.01.2009 | Категория: Темная сторона Силы | Автор: ManHunter
После распаковки приложений, написанных на Microsoft Visual C++ и накрытых некоторыми протекторами (Armadillo, PECompact и другие) они могут падать при запуске или выполнении каких-либо действий с ошибкой Runtime error R6002 floating point not loaded. Причина ее возникновения следующая: программа была скомпилирована с Microsoft.VC80.CRT и при запуске в ней проверяются атрибуты секций.Первый способ устранения ошибки R6002 заключается в выставлении атрибутов секций в распакованном файле в точности, как было в оригинальном. Сделать это можно с использованием бесплатной утилиты CFF Explorer VII. Второй вариант, более надежный и гарантированно рабочий - пропатчивание в исполняемом файле функции __fptrap, которая и отвечает за появление этого сообщения об ошибке. Дизассемблером IDA в файле она определяется примерно так:
Code (Assembler) : Убрать нумерацию
- __fptrap proc near
- push 2 ; <--- заменить на RET
- call __amsg_exit
- pop ecx
- retn
- __fptrap endp
Читать статью целиком »
Просмотров: 102391 | Комментариев: 133
