Проблема: Написал курсовик на Pascale. Принес преподу. У него не запустился. Я там пути не абсолютные указал на egavga. Терь он требует исправить это прямо в экзэшнике. Как это сделать?? я открыл его блокнотом нашел строку нужную удалил, а он не запускается
klem4
16.06.2006 16:11
Ты открыл exe - файл блокнотом и еще нашел что там исправлять ? Ты не путаешь экзешник с иcходником ? Возможно препод хотел чтобы ты при инициализации графического режима явно указывал пусть к драйверу ?
т.е например
initgraph(gd, gm, 'c:\TP7\BGI')
?
volvo
16.06.2006 16:53
Или (что самое надежное) - включить BGI прямо в EXE-шник: FAQ: Директивы компилятора (смотреть директиву $L)
SKVOZNJAK
17.06.2006 21:06
Почему это нельзя патчить скомпилированную прогу? Если хватит знаний - на здоровье, но использовать для этого портящий код блокнот C:\WINDOWS\system32\edit.com вот это намного лучше. Нужно открыть файл как двоичный и не допускать сдвигов текста: не стирать и не добавлять а только заменять символы.
Noof
17.06.2006 23:13
согласен. можно и исправить ехешник собсно если интересно =) смотришь и в нужное русло человек уйдет :D
volvo
17.06.2006 23:30
Вот только ты опять в сторону флейма не уходи, OK? Я больше предупреждать не буду...
Altair
18.06.2006 17:28
Цитата
и еще нашел что там исправлять ?
почему бы и нет ? Вернемся к вопросу:
Цитата
Терь он требует исправить это прямо в экзэшнике.
Без проблемм! Смотри как делал я. Для тестирования написал программу :
uses graph,crt; var gd,gm:integer; begin gd:=detect; initgraph(gd,gm,'c:\prog_sys\bin\'); readkey; closegraph; halt; end.
Далее скомпилировал, проверил все норм. Естественно если убрать из папки c:\prog_sys\bin\ файл egavga.bgi то программа не инициализирует видео. Далее я открыл HEX редактором файл программы : Нажмите для просмотра прикрепленного файла И, используя поиск, нашел указанный в программе пусть к драйверу: Нажмите для просмотра прикрепленного файла И строку
Цитата
c:\prog_sys\bin\
(hex:633A5C70726F675F7379735C62696E5C ) заменил на