Вверх ↑
Этот топик читают: Гость
Ответов: 28
Рейтинг: 14
#1: 2011-09-27 14:08:38 ЛС | профиль | цитата
Подскажите как сделать такой патч или какой компонент отвечает за такую функцию...

Необходимо вставить данные например между 4 и 8 байтом как показано на фото
Заранее спасибо!
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 3889
Рейтинг: 362
#2: 2011-09-27 14:12:43 ЛС | профиль | цитата
Работа с файлами обсуждалась множество раз. Пользуйтесь поиском (в верху страницы)

Сервисы ФорумыПользователиРегистрацияФайлообменБаныТоп 20Поиск

Читайте [burl=http://hiasm.com/wiki.html]СПРАВКУ[/burl]

Почему-то не отвечаютНаши правилаПриведи пример своей схемыПомочь сделать прогу
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#3: 2011-09-27 14:32:34 ЛС | профиль | цитата
azurin,
1. самая верхняя строка должна быть от 0 до 15
2. имеешь offset 4, число изменяемых байт 5. Ну и кто не даёт ?
3. дальше послушайся 1nd1g0 и всё будет ОК.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 28
Рейтинг: 14
#4: 2011-09-27 14:42:04 ЛС | профиль | цитата
1nd1g0, Tad, - Спасибо.
мож у кого схемка-пример найдется, буду благодарен.
карма: 0

0
Ответов: 3889
Рейтинг: 362
#5: 2011-09-27 15:22:49 ЛС | профиль | цитата
azurin писал(а):
у кого схемка-пример найдется

У справки, там целый раздел про файлы.
карма: 1

0
Ответов: 28
Рейтинг: 14
#6: 2011-09-28 11:19:26 ЛС | профиль | цитата
"У справки, там целый раздел про файлы"
почитал справку, про поиск промолчу в общем, фиг разберешься.
Если кто-то подкинет схемку отблагодарю не активированным ключиком на 1 год Kaspersky Internet Security


карма: 0

0
Ответов: 1073
Рейтинг: 76
#7: 2011-09-28 11:54:23 ЛС | профиль | цитата
[offtop]
azurin писал(а):
отблагодарю не активированным ключиком на 1 год

Заманчивое предложение Только ключик то точно приобретенный Вами, а то ведь в нете можно найти далеко не один такой ключик, а потом день-два и он в черном списке

Далее расскажите в подробностях что Вам нужно и самое главное для чего. Если поверим, может и поможем

Ну и напоследок мое предположение. Насколько я понял вам нужен патчер.
Также сравнение двух файлов(оригинала и измененного) далее на основе файла отчета изменять оригинал на других компьютерах. Если да то зачем изобретать велосипед, ведь в нете есть бесплатные патчеры.
Качаем и пользуемся на здоровье.[/offtop]
карма: 0

0
Ответов: 28
Рейтинг: 14
#8: 2011-09-28 12:53:23 ЛС | профиль | цитата
ключик, не приобретенный, а получен по акции, подойдет ко всем "кисам" кроме старых 6и7. срок жизни 12 мес. + около месяца транспортный запас = макс 13 мес. (P/S в чёрный список не попадет 100%)

Что требуется:
1. Программа открывает файл (СДЕЛАНО)
2. Конвертирует в шестнадцатеричный вид (СДЕЛАНО, но возможно не до конца)
3. После нажатия кнопки PATCH в тело файла добавляются с заменой другие байты-даные (НЕИЗВЕСНО КАК!!!)
4. Файл сохраняется измененным.
5. Программа выдает сообщение - пропатчено (это не сложно)
ВСЁ!

то что сделано (быстро)



Make(delphi)
ver(4.04 build 185)
Add(MainForm,2953706,84,98)
{
Width=487
Height=350
Name="PATCH"
Caption="patch"
BorderStyle=1
Position=1
}
Add(FileStream,6390214,231,196)
{
link(onLoad,5293226:doConvert,[(310,202)(310,237)(219,237)(219,272)])
}
Add(Button,14562768,63,196)
{
Left=355
Top=15
Width=65
Caption="Открыть"
link(onClick,16358020:doExecute,[])
}
Add(ODialog,16358020,119,196)
{
Filter=".bin|*.bin*"
Title="Открыть"
FileName=".bin"
link(onExecute,9079063:doEvent1,[])
}
Add(Edit,9609289,98,315)
{
Left=80
Top=15
Width=255
Text=""
}
Add(Hub,9079063,175,196)
{
link(onEvent1,6390214:doOpen,[])
link(onEvent2,9609289:doText,[(201,209)(201,265)(86,265)(86,321)])
}
Add(StreamConvertor,5293226,231,266)
{
Symbol=""
Point(Position)
Point(CheckSum)
link(onResult,2753155:doAdd,[(293,272)(293,279)])
link(Data,6390214:Stream,[])
}
Add(Memo,2753155,322,273)
{
Left=20
Top=50
Width=315
Height=250
ScrollBars=2
Point(onKeyUp)
Point(onKeyDown)
Point(onChar)
Point(onShow)
Point(onHide)
Point(onResize)
}
Add(Label,4392244,28,21)
{
Left=15
Top=20
Width=45
Caption="Файл"
}
Add(InfoTip,4192787,315,231)
{
Info=#23:редактор текста не нада|26:(добавлен для наглядности)|0:|
Font=[MS Sans Serif,8,1,0,1]
Width=204
Height=165
}
Add(Message,16462326,441,497)
{
Message="Пропатчено"
}
Add(Button,13094214,343,497)
{
Left=350
Top=80
Width=75
Height=50
Caption="PATCH"
link(onClick,16462326:doMessage,[])
}
Add(InfoTip,2628668,301,448)
{
Info=#17:то, что требуется|10:????? :(|
Font=[MS Sans Serif,8,1,0,1]
Width=204
Height=165
}

Буду рад если кто-то еще поможет, и также отблагодарю ключиком
карма: 0

0
Ответов: 1073
Рейтинг: 76
#9: 2011-09-28 13:10:47 ЛС | профиль | цитата
azurin писал(а):
в тело файла добавляются с заменой другие байты-даные

Как и чем генерируется список байт-данных, или может эти данные постоянны? Также всегда одни и те же данные в одно и тоже место? Сомневаюсь...
А значит нужно сравнивать оригинальный файл с измененным и разницу записывать в файл отчета, который и будет использоваться для изменений файлов.
azurin писал(а):
то что сделано

Фактически ничего не сделано

Вобщем либо переносим тему в куплюпродам, либо пишите в личку, попробуем найти решение.


карма: 0

0
Ответов: 28
Рейтинг: 14
#10: 2011-09-28 13:30:14 ЛС | профиль | цитата
tom-it писал(а):
или может эти данные постоянны?


да, постоянны


tom-it писал(а):
всегда одни и те же данные в одно и тоже место?


да

в личку почемуто написать не могу, у вас ICQ есть?
карма: 0

0
Ответов: 1073
Рейтинг: 76
#11: 2011-09-28 13:35:23 ЛС | профиль | цитата
удалено
карма: 0

0
Ответов: 3889
Рейтинг: 362
#12: 2011-09-28 13:40:43 ЛС | профиль | цитата
azurin писал(а):
вставить данные например между 4 и 8 байтом

Вставить и заменить - различные операции. В первом случае это разделение и склеивание, во втором - простейшая запись. Кстати, FileStream ограничен в размере файлов, для файлов более 2 Гб придётся использовать SharedStream.
[offtop]
azurin писал(а):
в личку почемуто написать не могу

Репутации не хватает[/offtop]
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#13: 2011-09-28 13:46:49 ЛС | профиль | цитата
azurin, тут есть несколько нюансов.
Если хочешь сам сделать, то начинать нужно так:
code_25273.txt
а если хочешь, чтобы тебе tom-it сделал или кто другой, то начинать нужно, как в том анекдоте:
Анекдот писал(а):
Больной:
- Доктор, можно к вам зайти ?
- На что жалуетесь?
- На 500 баксов.
- Тогда заходите.

или скачай готовый HTX-редактор.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_25273.txt [1.3KB] [196]
Ответов: 1073
Рейтинг: 76
#14: 2011-09-28 14:01:07 ЛС | профиль | цитата
Возможно, что и делать не придется. Вопрос перерастает с "вставить данные" в "скачать готовый патчер".
карма: 0

0
Разработчик
Ответов: 4697
Рейтинг: 426
#15: 2011-09-28 14:17:55 ЛС | профиль | цитата
azurin, проясни один момент: размеры файлов пропатченного и старого заведомо одинаковы? Или нужно так, чтоб патчились файлы различных размеров?
В зависимости от ответа смогу сделать за разный срок.
карма: 10
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)