выделенный текст Похоже, что функция jdeStrcmp()
(stdcall
функция) в jdeunicode.dll
вызвала исключение (нарушение доступа, другими словами, некоторый указатель был плохим или нулевым).
По моему мнению, хорошая DLL не позволит избежать исключения, но, видимо, это и произошло.
Обновление
Разрешение экранирования исключения обычно не является проблемой для вызывающей стороны, написанной на том же языке, что и DLL. Это может иметь катастрофические последствия для звонящего, который не был. Я говорю из опыта здесь. Функция, конечно, должна как-то сигнализировать вызывающей стороне, что что-то произошло. Как это происходит - вопрос дизайна. Пропуск исключений - это, безусловно, неправильный путь.
См. и этот вопрос об исключениях, пересекающих границы модуля. Или этот (тот же язык, другая версия!). Или Google для этого. Вы увидите много причин и примеров того, почему исключения, пересекающие границы модулей, являются Плохой идеей (tm) .
Одним из примеров языка, который не может перехватывать исключения, которые экранируют (нативную) DLL, является C #, например. в этот ТАК вопрос . Я предполагаю, что то же самое относится и к другим языкам .NET, а также к множеству родных языков.