Есть ли способ следить за выполнением программы через код DLL в шестнадцатеричном формате?
Например, я хочу посмотреть, какие разделы только что прочитаны, когда я нажимаю кнопку.Это должно работать для x64 DLL.
Спасибо!
Да, вы загружаете процесс в отладчик и выполняете его за один шаг.
Отладка с использованием IDE не показывает эквивалентный для ассемблера язык выполнения инструкции IL.Вам нужно написать свои собственные хуки для правильного дизассемблера.
Я не использовал его, но однажды я наткнулся на инструмент Intel, который анализирует контекст указателя инструкций и может использовать файлы символов для преобразования IP в фактическое имя функции ... VTune может быть?
Полагаю, могут быть и другие подобные инструменты
ОБНОВЛЕНИЕ: иначе. "статистические профилировщики" ...
Вы можете использовать инструмент в http://ircdb.org для регистрации вызовов функций произвольных DLL.
Это имя SocketSpy, потому что изначально оно было создано для отслеживания только winsock.dll, но оно позволяет вам отслеживать другие библиотеки.
С http://fixunix.com/programmer/95098-tracing-library-dll-calls-win32.html
Использовать опцию-> Список точек останова по умолчанию Меню для добавления или удаления программных точек останова из подключенных DLL. Положить мягкий Точки останова только в нужной вам функции максимизировать время выполнения. Мягкая точка останова означает, что socketspy не останавливается на этой точке останова, только Журнал информации о точках останова. Жесткий точка останова означает, что сокет ОСТАНОВИТЕСЬ в этой точке останова, и Откроется диалоговое окно точки останова. Уточнить какие звонки должны быть перехвачены ВСЕМ, ИЗ ФАЙЛА EXE или из DLL (Combobox). Указать файл журнала Файл-> Открыть файл журнала меню, если вы хотите сохранить функцию Вызовы DLL в текстовый файл, включить ведение журнала (флажок). Затем выберите новое или уже действующее действие. процесс (кнопка «Выбрать процесс»). инструмент может использоваться только в NT / 2000 / XP
Использовать опцию-> Список точек останова по умолчанию Меню для добавления или удаления программных точек останова из подключенных DLL. Положить мягкий Точки останова только в нужной вам функции максимизировать время выполнения.
Мягкая точка останова означает, что socketspy не останавливается на этой точке останова, только Журнал информации о точках останова. Жесткий точка останова означает, что сокет ОСТАНОВИТЕСЬ в этой точке останова, и Откроется диалоговое окно точки останова. Уточнить какие звонки должны быть перехвачены ВСЕМ, ИЗ ФАЙЛА EXE или из DLL (Combobox).
Указать файл журнала Файл-> Открыть файл журнала меню, если вы хотите сохранить функцию Вызовы DLL в текстовый файл, включить ведение журнала (флажок).
Затем выберите новое или уже действующее действие. процесс (кнопка «Выбрать процесс»). инструмент может использоваться только в NT / 2000 / XP
Кроме того, существует StraceNT, который может отслеживать произвольные Dll. Он доступен бесплатно от http://www.intellectualheaven.com/default.asp?BH=projects&H=strace.htm