![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
zim22 |
|
|||
![]() depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
приведите пример. дабы не быть голословным. |
|||
|
||||
xvr |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Вывести куда? Если в stdout - то никак. Это текстовый поток и он не рассчитан на вывод бинарных данных. (Точнее, если перенаправить вывод из программы в файл, то в такой stdout вывести можно, но это уже за рамками) Для копирования из файла в файл можно использовать fread/fwrite. Для создания файла из ресурсов - FindResource/LoadResource/LockResource + fwrite Для помещения файла в ресурс нужно добавить в проект *.rc файл такого содержания
Добавлено через 1 минуту и 38 секунд
Это сделать можно (через printf("%c",byte);) Но с тем же успехом можно и гланды через жо... удалять ![]() |
||||||
|
|||||||
zim22 |
|
|||
![]() depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 24 Всего: 69 |
||||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
||||
|
||||
Bugmaker |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 27.6.2008 Репутация: нет Всего: нет |
с ресурсами не разберусь... создал новый source.rc вписал в него CFG_dgrs_cfg RCDATA DISCARDABLE "calc.exe"
потом в основнйо программе сделал #include <source.rc>. Далее могу его использовать например так fwrite ("1.exe",500,500,CFG_dgrs_cfg); ?? Или чтото не так делаю?? Вообще когда пытаюсь откомпилировать source.rc компилятор тужится и помоему зависает... буду ждать... GoldFinch а что писать в конец файла то?? где взять содержимое экзешника?? если я его блокнотом открою и получанный текст запишу, это ведь будет неверно?? как узнать что писать то?? Это сообщение отредактировал(а) Bugmaker - 6.4.2009, 21:57 |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
в консоли (cmd) copy dropper.exe+calc.exe dropper.exe правда тут возникает проблема определения конца дроппера, к тому же размер дроппера должен быть выровнен по 512-байтовой границе Это сообщение отредактировал(а) GoldFinch - 6.4.2009, 22:03 |
|||
|
||||
Bugmaker |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 27.6.2008 Репутация: нет Всего: нет |
GoldFinch
Если я с таким примитивом не могу разобраться то куда уж мне до определения конца и выравнивания то?? -) Поясните подробнее с ресурсами.. В чем моя ошибка ? |
|||
|
||||
GoldFinch |
|
||||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
в том что надо не тупо копипастить, а умно копипастить, разбираясь в том что копипастишь для работы с бинарными файлами (в том числе .ехе) есть специальные программы - hex-редакторы самой популярной считается WinHEX в частности в WinHEX есть фича - копирование данных в виде исходника С выделяешь весь файл, edit>copy block->C source получаешь в буфере обмена текст вида
вставляешь его в исходник дроппера, и получаешь чтото такое
Это сообщение отредактировал(а) GoldFinch - 6.4.2009, 23:19 |
||||
|
|||||
Bugmaker |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 27.6.2008 Репутация: нет Всего: нет |
GoldFinch спасибо большое.. это я и имел ввиду, когда спрашивал будет ли верным просто скопировать содержимое через блокнот.
|
|||
|
||||
Anikmar |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2513 Регистрация: 26.11.2006 Где: Санкт-Петербург Репутация: 9 Всего: 59 |
Если вы хотите создать exe без копирования, то чем уж так принципиально отличаются ресурсы от копирования? Что кроме exe в файле ресурсов еще пара иконок будет? Переименуйте calc.exe в файл ttt.dat и программно копируйте его в calc.exe - по сути тот же эффект, что и с ресурсами.
Вариант WinHEX - для разумных по размеру файлов весьма неплох. По крайней мере exe-файл вашей программы будет один. |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
Bugmaker, даи вообще, дался те этот С++, всеравно ты его не знаешь ^^
пиши лучше на fasm, он более приспособлен для таких целей, и код там короче, и никаких WinHEX и ресурсов не надо
|
|||
|
||||
xvr |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
Все не так.
|
||||
|
|||||
JAnty |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 6.12.2004 Где: Москва Репутация: 1 Всего: 2 |
Упс, я надеюсь вы не поверели буквально не printf а fprintf();
Вот пример, я програмно прочитал calc.exe и записал его в calc_2.exe
![]() -------------------- |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
unsigned char c;
fscanf(f,"%c",&c); ололо быдлокод детектед |
|||
|
||||
JAnty |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 6.12.2004 Где: Москва Репутация: 1 Всего: 2 |
можно и без unsigned
это для корректности. -------------------- |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |