| |
|
gryja
Новичок
Регистрация: 3.9.13 Сообщений: 7 Репутация: 134
|
#1 [17.02.14, 21:34] Программа для добавления общего оффсета ко всем адресам в патче.
http://vk.com/doc172019725_270785235Программа для добавления общего оффсета ко всем адресам в патче. Для работы переименовать нужный файл патча именем "INPUT.VKP", затем - запустить программу. Появится файл патча со смещёнными адресами - "OUTPUT.VKP". Если оффсет с минусом - то смещение в минусовую сторону, с плюсом - в плюсовую. Если проставлено несколько оффсетов подряд - общий оффсет будет последним. Также можно ставить новый оффсет через блок с кодом. Это позволяет совместить несколько патчей в один, пропустить через данную прогу, и на выходе получится нужное без ручного пересчёта адресов. Добавлена функция исправления ошибок при написании кириллическими символами или буквы "о" вместо нуля. Если найдёте баг в программе и опишите - исправлю. После скачивания переименуйте "OffSeter_13.02.2014.exe.txt" в "OffSeter_13.02.2014.exe". http://vk.com/doc172019725_271368057Добавил старые отступы перед комментариями. http://vk.com/doc172019725_271587019Забыл организовать подсчёт строк в патче для вывода ошибки. http://vk.com/doc172019725_271851993Добавлена реакция на другие синтаксические ошибки в записи адресов остановом проги и выводом строки ошибки патча.
|
Спасибо сказали: MrGraL, E1kolyan, a6b6
|
gryja
Новичок
Регистрация: 3.9.13 Сообщений: 7 Репутация: 134
|
#2 [26.07.15, 14:28] Re: Программа для добавления общего оффсета ко всем адресам в па
Батник для удобства. Ложите его рядом с данной прогой в %ProgramFiles%, и ярлык - на рабочий стол. Можно перетаскивать VKP на ярлык, получится ноый VKP и Backup.
----------------------------------------------------------------------------------------------
@ECHO OFF CLS FOR %%I IN (%*) DO SET Z=%%~zI FOR %%I IN (%*) DO SET X=%%~xI :: ============================================================= IF %Z%==0 ( ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO Размер исходного файла равен нулю. PAUSE>NUL EXIT ) :: ============================================================= IF %Z% GTR 5242880 ( ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO Размер исходного файла больше 5 МБ. PAUSE>NUL EXIT ) :: ============================================================= IF /I NOT %X%==.VKP ( ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO Расширение имени исходного файла не 'VKP'. PAUSE>NUL EXIT ) :: ============================================================= IF EXIST INPUT.VKP DEL INPUT.VKP IF EXIST OUTPUT.VKP DEL OUTPUT.VKP COPY %* INPUT.VKP CLS OFFSETER.EXE CLS FOR %%I IN (OUTPUT.VKP) DO SET Z=%%~zI :: ============================================================= IF %Z%==0 ( ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO. ECHO Синтаксис входного файла имеет необычный стандарт. IF EXIST INPUT.VKP DEL INPUT.VKP IF EXIST OUTPUT.VKP DEL OUTPUT.VKP PAUSE>NUL EXIT ) :: ============================================================= REN %* "%~n1-BACKUP-%~x1" IF EXIST OUTPUT.VKP COPY OUTPUT.VKP %* IF EXIST INPUT.VKP DEL INPUT.VKP IF EXIST OUTPUT.VKP DEL OUTPUT.VKP
----------------------------------------------------------------------------------------------
|
Похожие темы
Вы не можете начинать темы. Вы не можете редактировать свои сообщения. Вы не можете создавать опросы. Вы не можете вкладывать файлы в сообщения. Вы не можете отвечать на сообщения. Вы не можете удалять свои сообщения. Вы не можете голосовать.
|
|
|