| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Слить два файла в один |
| Автор: ne0n 10.11.2005, 15:17 |
| Собственно по сабжу. Но надо не просто запихнуть 2 файла в один, но и сделать так чтобы они работали. Если кто не понял обьясняю: Есть два файла f1 и f2. Обьединяем их таким образом что при запуске общего экзешника сначала запускается f1 а потом f2! Сам пробовал не получилось |
| Автор: _hunter 10.11.2005, 15:42 |
| пишеш простой ехе-шник ( третий ) которому первые два предаеш как ресурсы ( или взад прикрепляеш ) и который эти два файла запускает ( сохранив на диск ) |
| Автор: Alex 10.11.2005, 15:46 |
| ne0n, и что же это вы такое пишите, уж не трояно ли? |
| Автор: ne0n 10.11.2005, 15:47 |
| Втом и дело, не подходит вариант запуска этих экзешников с диска. Так бы я и сам сделал. Пробовал приписать к началу одного фала второй ... ни чего не вышло. Добавлено @ 15:51 Alex нет моя натура направлена больше на созедание чем на разрушение. Давно эта задумка была(так к слову). что то вроде маленькой утилиты которая перед запуском основного файла проверяет его CRC если все впоряде дает зеленый свет, если нет то финит аля комедия |
| Автор: Alex 10.11.2005, 15:56 | ||
Так может тогда вопрос по другому сформулировать... Как не допустить запуска моей программы если ее CRC отличен от того, что был после компиляции? |
| Автор: _hunter 10.11.2005, 15:58 | ||
не подходит запуск с диска -- недавно была тема про запуск из памяти.
а что ты эти хотел добится |
| Автор: ne0n 10.11.2005, 16:00 | ||
| Если взять твой вариант он будет работать только на моей программе, А я хочу чтобы можно было таким образом защитить другой софт. Что то типа небольшого протектора. Добавлено @ 16:05
Хотел добится чтобы запускался сначала протектор, а потом утилита. но почемуто запускался только протектор. |
| Автор: _hunter 10.11.2005, 16:35 | ||||
это почему это? этот загрузчик будет грузить что угодно.
я в чай положил сахар. это должно было привести к закипанию чая. не закипел. странно... |
| Автор: ne0n 10.11.2005, 16:40 | ||||
Это было адресованно Alex'y
_hunter Может обьяснишь что я не так делал? Я раньше с файлами почти не работал(кроме текстовых) |
| Автор: _hunter 10.11.2005, 17:39 |
| у exe-шников есть строгая структура ( и процедура запуска ) и простое приписывание данных (не понимая того, что ты делаеш ) к изменению ( правильному ) этой структуры ( и, соответственно, процедуры загрузки ) не приведет... |
| Автор: RideX 10.11.2005, 18:33 | ||
Без обид, если честно сказать, то ничего путёвого из этого у Вас не получится, можете не тратить время и заняться чем-нибудь другим. %) P.S. Вообще пакеры/протекторы работают по другому принципу, в общих чертах это можно сказать так: в защищаемом файле создаются новая(ые) секция(и), в них пишется код распаковщика пакера/протектора и ставится точка входа. Соответственно при запуске этого файла сначала выполняется код распаковщика, а после этого управление передается на оригинальную точку входа программы. Механизм работы пакера/протектора аналогичен работе компьютерного вируса. Есть правда исключение: UPX - полностью перестраивает файл, который после обработки им состоит из трёх секций. Его исходники Open Source, так что можете глянуть ;) |
| Автор: Poseidon 10.11.2005, 18:57 |
| ne0n, то что ты хочешь сделать так как ты хочешь, не получится. И тебе уже указали почему, но Joiner (а именно так это называется) я тебе покажу как делается. Смотри прикрепленные проект, изучай... |
| Автор: ne0n 10.11.2005, 21:04 |
| Как я понял джуниор распаковывает оба файла а потом их запускает, а нельзя заставить запускать файлы из самого джуниора? Если у коко есть подкиньте инфы по работе с нетипизироваными файлами!!! |
| Автор: FRAGNATIC 10.11.2005, 22:11 | ||
|
| Автор: RideX 10.11.2005, 22:21 | ||||||
Файлы не пакованы, они просто извлекаются из ресурсов в неизменном виде.
Нет, таким способом нельзя, нужно инжектить код в другой процесс. Вообще этот код полезен, в основном, для "приготовления" троянов, т.к. совершенно не автономен - для компиляции ресурсов и сборки итогового файла нужна установленная Delphi.
BlockRead/BlockWrite |
| Автор: Poseidon 10.11.2005, 23:39 | ||||
|
| Автор: FRAGNATIC 11.11.2005, 00:10 | ||
может поможет http://wasm.ru/article.php?article=apihook_1 http://wasm.ru/article.php?article=apihook_2 http://wasm.ru/article.php?article=apihook_3 |
| Автор: ne0n 11.11.2005, 21:24 |
| Я пришел к выводу чо врятли то чтоя задумал можно реализовать на дельфях.(ох как обидно) Хотя не знаю.... Надеюсь кто о сможет опровергнкть мой вывод. На BlockRead и BlockWrite далеко не уедешь почитав вчера много-много статей по написанию вирусов в голове мелькнуло три буквы... asm(в с мысле ассемблер) Походу только он мне поможет. (и с++ подойдет я думаю, но asm хотел давно выучить) Ну тогда ладно всем спасибо за помощь!!! |
| Автор: Albinos_x 11.11.2005, 21:37 | ||
а что тебе мешает воспользоваться asm вставками... |
| Автор: FRAGNATIC 12.11.2005, 00:05 | ||
ой тока не надо оно дело асм но если это реально и на С++ то можно и на дэлфи просто если ты видел статьи на эту тему с примерами на С++ но не видел статей на эту тему с примерами на дэлфи то это ни чего не значит ) |
| Автор: RideX 12.11.2005, 08:57 | ||||
|
| Автор: ne0n 12.11.2005, 14:59 | ||
Никогда бы не подумал... |
| Автор: Poseidon 12.11.2005, 16:11 | ||
|
| Автор: ne0n 12.11.2005, 18:11 | ||
Я токого не говорил!!! просто столь удчный проект наисан на языке , который не является системным!!! З.Ы.Если захочешь то можно все сделать!!! |
| Автор: FRAGNATIC 12.11.2005, 20:51 | ||||
лоооооооооооооооооооооооооооооооооооооол
что-то одно выучи для начала и тогда отпадут вопросы как такое написать а если ты посидишь за С++ или асм немного всё ровно ты не поймёшь как сделать то что тебе сейчас нужно ) что-то одно выучи оч хорошо!! не надо бегать от языка к языку а с чем-то одним работать и со временем перейти на другой язык не составит ни какого труда ) |
| Автор: Alex 12.11.2005, 20:52 |
| Модератор: Давайте вернёмся к теме обсуждения. |
| Автор: bartram 13.11.2005, 10:36 |
| ne0n, запихни файл в виде массива символов, а потом формируй образ exe в памяти и запускай его точку входа, и будет тебе счастье |
| Автор: ne0n 13.11.2005, 16:15 | ||||
А поподробней можно?
ОК! bartram, не надо уже почитал... |