Как я могу игнорировать / отключать инструкции INT 01 и INT 03 в хосте EXE, используемом для отладки моей DLL Delphi 6?

У меня есть Delphi 6 DirectShow DLL, которую я использую со Skype. Моя настройка отладки для DLL заключается в установке параметров Хост для моих параметров Выполнить на Skype. Проблема в том, что, похоже, в клиенте Skype есть множество инструкций INT 01 и INT 03, которые делают отладку невозможной, поскольку они постоянно подвергаются атакам. Каждый раз при попадании в один из них отладчик Delphi всплывает с сообщением о нарушении прав доступа и указателем инструкции окна ЦП прямо на инструкции INT 01 или INT 03.

Есть ли способ обойти эту проблему, чтобы я мог правильно отлаживать? (Обратите внимание: я понимаю, что проблема может быть в одной из других внешних DLL, уже загруженных Skype, так что это не Skype, но это та же проблема, которую мне нужно решить в любом случае).


person Robert Oschler    schedule 26.12.2011    source источник
comment
Просто исправьте их с помощью кода операции NOP   -  person OnTheFly    schedule 26.12.2011


Ответы (1)


Skype принимает ряд обширных мер для защиты от отладчиков. То, с чем вы сталкиваетесь, почти наверняка является одним из них.

Возможно, вам потребуется отладить вашу DLL в среде, отличной от Skype.

person Community    schedule 26.12.2011
comment
Чтобы добавить к duskwuff, приведенному выше: вы можете захотеть добавить вывод отладки в файл и / или использовать OutputDebugString API и наблюдать с помощью инструмента DebugView, чтобы получить вывод отладки времени выполнения из процесса Skype без подключения к нему настоящего отладчика. - person Roman R.; 26.12.2011