Сейчас на форуме: _MBK_, user99, ManHunter, Magister Yoda (+8 невидимых) |
eXeL@B —› Основной форум —› Помогите установить брекпоинт |
Посл.ответ | Сообщение |
|
Создано: 27 сентября 2005 01:32 · Личное сообщение · #1 Есть программа, написана на Delphi, требований по установке Direct X или OpenGL отсутствуют. Графические файлы хранятся в упакованном виде во внешнем файле. Хочется определить место в программе где начинается вывод на экран картинки, а следовательно и адрес памяти где эта картинка хранится. Подскажите как написать точку останова в SoftIce. |
|
Создано: 27 сентября 2005 02:16 · Личное сообщение · #2 |
|
Создано: 27 сентября 2005 02:19 · Личное сообщение · #3 |
|
Создано: 27 сентября 2005 02:49 · Личное сообщение · #4 |
|
Создано: 27 сентября 2005 04:32 · Личное сообщение · #5 Benjamin пишет: Мне нужно определить точку вывода на экран. Какая стандартная процедура Windows это делает? Если под словом стандартная, имеется в виду документированная, то – никакая. И вообще на экран выводит видеодрайвер, а перед ним куча виртуальностей. Получаешь контекст устройства/отображения (или создаёшь его) передаёшь задание, а что там система колдует - хрен разберёшь. Сам посуди, как в многозадачной системе разрулить один экран на всех? Потыкайся в: BeginPaint (начать рисование, то есть получить контекст клиентской области) EndPaint (К этому времени объект уже выбран) InvalidateRect (послать сообщение WM_PAINT) GetDC (получить контекст) CreateCompatibleDC (Создать контекст) Ну и самая главная: SelectObject (Собственно говоря выбор объекта для рисования) Только объект выбирается по его хендлу. А вообще: Iczelion, API урок 25. ----- Всем привет, я вернулся |
|
Создано: 28 сентября 2005 09:37 · Личное сообщение · #6 В случае с OpenGL программа вызывает glFlush wglSwapBuffers и wglSwapLayerBuffers Посмитрите, какие библиотеки присоединены к программе. В случае с такими библиотеками OpenGL, DirectX и т.д. ставить точки останова на вывод изображения ставить бесполезно, лучше смотри алгоритм чтенния изображений из файла |
eXeL@B —› Основной форум —› Помогите установить брекпоинт |