Re: Может ли LoadLibrary потереть данные приложения ?
От: algol Россия about:blank
Дата: 01.03.07 11:09
Оценка:
Здравствуйте, drobus, Вы писали:

D>Помогите разобраться. Ничего не понимаю, и уже не первый день. Как такое могло произойти после загрузки либы ? Пока сам ковырялся установил следующее: программа ссыпется, если либа написана на C++Builder'е (тестил на 5.0 и 6.0) с включенной VCL. Если её отключить, оставить только C++, то всё работает нормально. Если либа написана на VC++6.0 с или без MFC, то тоже проблем нет. Вот код неработающей либы:


У каких-то из старых продукт Борланда (кажется Турбо-Паскаль) была аналогичная проблема с ошибкой деления на 0 на быстрых (для того времени) машинах. Насколько не изменяет склероз, там при инициализации измерялось быстродействие машины, чтобы потом его где-то учитывать. На слишком быстрых машинах время получалось нулевым и возникала ошибка деления.
Возможно здесь аналогичная проблема. Вот здесь например написано:

Description

Some applications (larger ones) written in Delphi 7 will crash at startup if HyperThreading is enabled on fast machines (>=3 GHz). First it appears a "unknown software exception (0xc000008e)" and then a "Runtime error 200".

Workarounds

Disable HyperThreading in BIOS and use a HAL with no "ACPI-Multiprocessor". Then same EXE works fine.

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.