Оно.
Удивляюсь, как он у тебя после этого запускается... Сдвиг хоть на 1 байт по идее все ломает, так как уже по сохраненным в коде смещениям будут начинаться совсем другие данные. А сдвиг на байт в секции кода - вообще катастрофа.
Почему-то при правке explorer.exe на open.lnk у меня всё прошло на ура. Ладно, сейчас попробую твой метод.
Исправлять
explorer.exe на
open.lnk нужно в любом случае. Иначе какой смысл править параметр, если он по-прежнему будет передаваться эксплореру, а не ярлыку для запуска тотала. А исправлять строку
/select,"%s" нужно для перехода к файлам (для торрентов, содержащих лишь один файл, или из панели списка файлов).
Кстати, а что ты подразумеваешь под "написать поверх"? Скопировал нужное, выделил всю строку, вставил поверх. Или тоже прописывать 20 00..?
Если ты не обратил внимания, в hex-редакторе основной режим ввода текста - режим замены, то есть, введенные тобой символы заменяют символы под курсором (т.е., пишутся поверх них) - хотя, можно переключиться в режим вставки клавишей Insert (программа предупреждает, что это может повлиять на размер файла) - но только при правке файлов, размер которых менять можно (например, текстовых или текстово-двоичных типа торрент-файлов, но тут уже надо соблюдать формат). То есть, чтобы записать
"%s" поверх
/select, нужно исправить
/ на
",
s на
% и т.п. Режимов вставки из буфера в винхексе два - один вставляет (Paste, Ctrl+V), а другой пишет поверх (Write, Ctrl+B).
Т.о., можно прописать с помощью Ctrl+B скопированную в буфер строку, а можно прописать ее вручную, используя hex-поле или текстовый столбец. А прописать можно как сразу строку
"%s", так и ее же с кучей пробелов как до, так и после - это не повлияет на работоспособность, так как лишние пробелы между параметрами игнорируются, а мы формируем строку параметров.