Программа для добавления общего оффсета ко всем адресам в па : Патчи : Форум |
gryja: |
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 Добавлена реакция на другие синтаксические ошибки в записи адресов остановом проги и выводом строки ошибки патча. |
gryja: |
26.07.15, 14:28 |
Батник для удобства. Ложите его рядом с данной прогой в %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 ---------------------------------------------------------------------------------------------- |
URL этой темы: https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=5749 © 2005-2018 supertrubka.org |