Текущий архив: 2002.11.18;
Скачать: CL | DM;
Вниз
Как вставить файл в запущенное приложение? Найти похожие ветки
← →
pwlusa (2002-05-07 21:50) [0]Как вставить файл в запущенное приложение?
Нужно чтоб файл вписывался в тело моей программы. И после закрытия остовался в ней.
Заранее спасибо.
← →
ZZ (2002-05-07 23:17) [1]InsertFileIntoMyFile(MyFile,ChuzhoyFile:String);
Что значит вставить файл ? Куда вставить?
ЗЫ. Запущенный файл не редактируется
← →
Almaz (2002-05-08 00:14) [2]
> pwlusa © (07.05.02 21:50)
Изменять файл, запущенный на выполнение, стандартными средствами Windows вообще невозможно. Так что могу лишь посоветовать создать некоторое дополнительное приложение, которое будет запускаться после завершение основного, и дописывать например в конец файла программы необходимые данные. Также задачу можно решить и применением BAT файла.
Удачи.
← →
pwlusa (2002-05-20 09:35) [3]И как написать это приложение?
← →
PC Maniac (2002-05-21 20:15) [4]Из первой программы запускаете программу 2. Программа 2 дожидается завершения программы 1. Программа 2 записывает в программу 1 данные. Программа 2 завершается.
← →
pwlusa (2002-05-24 21:45) [5]PC Maniac
Это понятно но мне тогда нужен текст второго приложения
Может кто знает?
← →
Lego (2002-05-26 04:22) [6]Интересно... а кто-то знает как вообще WinAmp переписывает ID3 тэг во время проигрывания файла? Очень уж интересно стало...
← →
cyborg (2002-05-26 11:41) [7]Как как? Он его открыл, он в него и пишет.
← →
Sergs (2002-05-26 13:23) [8]Кто женщину кормит, тот ее и танцует? =)))
← →
SergeyKatruk (2002-05-27 23:19) [9]А зачем тебе это надо ???
Небось вирус злобный пишешь !!! ;-)
← →
vopros (2002-05-28 10:46) [10]Простите идиота но куда в Exe можно писать данные в смысле целый файл?
← →
panov (2002-05-28 11:24) [11]>vopros © (28.05.02 10:46)
Например, в конец файла дописать...
← →
vopros (2002-05-28 11:52) [12]>panov © (28.05.02 11:24)
И что запускаться будет?
← →
SEM_ (2002-05-28 12:10) [13]Конечно будет куда он денется
← →
vopros (2002-05-28 12:22) [14]Действительно запускается. А помниться в DOS там какие-то контрольные суммы были. Щас дерьма набрал в конце exe и запустлась. Прикол.
← →
pwlusa (2002-05-31 23:36) [15]Первая прога вроде контейнера в который я ложу файлы.
Потом отправляю адресату а он вытаскивает их из него. Естественно все это под поролем.
← →
Anatoly Podgoretsky (2002-06-01 10:39) [16]vopros © (28.05.02 10:46)
В любое место, которое сочтешь нужным
← →
WhiteRat (2002-06-08 21:20) [17]А просто файл данных зашифровать? И с паролем будет...
← →
vixic (2002-06-25 07:26) [18]эй программеры есть компонент который позволяет сохранять данные в ехе файл.
← →
Игорь Шевченко (2002-06-25 09:48) [19]vixic (25.06.02 07:26)
> эй программеры есть компонент который позволяет сохранять
> данные в ехе файл.
Есть. Называется TVirus
← →
D'Bug (2002-06-25 11:47) [20]Если согласен ограничиться работой под WinNt/2k, то поищи UpdateResource в Win32SDK
← →
VEG (2002-06-25 12:55) [21]>Например, в конец файла дописать...
Называеться аттач... Не трудно реализовать через потоки.
← →
ППавел (2002-07-24 21:19) [22]Слушайте я так и не получил ответа как мне это зделать!
Мне нужен исходник который приписывал бы к exe файлу другой файл.
В delphi есть же такая фигня как например приписывает графический файл к пректу.
← →
Юрий Зотов (2002-07-24 23:50) [23]> Мне нужен исходник который приписывал бы к exe файлу другой файл.
ОK, уговорили. Bот этот исходник. ПОЛНОСТЬЮ. РАБОТАЮЩИЙ.
copy ExeFile.exe + AttachedFile.ext ExeFile.exe
Bat-файл сами сгенерите, или тоже помощь нужна?
Вот только интересно, а как же адресат его вытаскивать-то будет? Ему же, бедолаге, придется определить, где кончается EXE и начинается аттач. Вот уж помучается-то...
И еще интересно - а зачем же такие навороты? Почему не пересылать файлы НОРМАЛЬНЫМИ способами? Хоть с паролем, хоть без него.
Так что не пудрите людям мозги, юный трояновирусотворец.
> В delphi есть же такая фигня как например приписывает
> графический файл к пректу.
Угу, есть. Ресурсы это называется. Одна лишь деталь - файл приписывается к еще НЕ ЗАПУЩЕННОМУ проекту.
← →
Woland_Form_ABF (2002-07-26 16:36) [24]www.abfsoftware.com
component TabfFileStorage
юзайте...там еще много чего интересного...
← →
Woland_Form_ABF (2002-07-26 16:38) [25]www.abfSowftare.com
component TabfFileStorage
← →
y-soft (2002-07-27 20:45) [26]D"Bug (25.06.02 11:47)
Если согласен ограничиться работой под WinNt/2k, то поищи UpdateResource в Win32SDK
Это не совсем так. BeginUpdateResourceW, UpdateResourceW, EndUpdateResourceW можно использовать и в Win95,98,Me при условии, что установлена поддержка Unicode (нужно скачать с www.microsoft.com unicows.exe и установить) (см. MSDN)
← →
Rasa (2002-09-18 04:09) [27]А без unicode никак, да?
← →
Mirovodin (2002-09-18 17:16) [28]2 pwlusa ©
1) К exe файлу можно прилинковать все что угодно, для этого у PE файла есть спец-я RCDATA.
Делаем след-е.
Допустим нужно сделать дописать к exe файлу файл с названием F1.exe. Создаем RC файл со след-й строкой:
MYFILE RCDATA F1.exe
сохраняем в файле Res.rc , и компилируем brcc32.exe Res.rc
2) В исходнике 1-го приложения присоединяем полученный ресурс
{$R Res.RES}
3) Получаем доступ к ресурсу :
Var
RSRC : HRSRC;
RES : THandle;
P : Pointer;
...
RSRC:=FindResource(HInstance, "GAMEDATA", RT_RCDATA);
RES:=LoadResource(HInstance, RSRC);
P:=LockResource(RES);
...
В P указатель на данные, далее делаем что хотим...
Так можно помещать что угодно картинки, MP3, видео и делать с ним что угодно - сохранять в файл, проигрывать и т.д.
4) Это безобидный способ, а вот если нужно писать вирусы то нужно вклиниваться в чужой процесс. Об этом написано у Рихтера, слава богу что на C++ и достаточно сложно, иначе нас бы захлестнула волна вирусав :)
← →
Mirovodin (2002-09-18 17:18) [29]Sorry, правильно :
RSRC:=FindResource(HInstance, "MYFILE", RT_RCDATA);
← →
Юрий Зотов (2002-09-18 22:45) [30]> Mirovodin © (18.09.02 17:16)
Исходный вопрос:
Как вставить файл в запущенное приложение?
← →
Serg Gurin (2002-09-19 01:42) [31]У меня в принципе похожая ситуация:
Есть программа, есть файлы которые должны обязательно! быть при работе программы - это файлы настроек, причем стандарты нечасто, но меняются, а при установке у клиента за три-девять земель бывает что какой-то файл забыли или положили не тот. Так вот чтобы исключить такую ситуацию я запихивал файлы в Exe а при запуске проверял, имеется ли он в наличии, если нет - создавал (сам-себе инсталлятор). Настройки выставляю не я и при этом бы хотелось, что бы они автомтически :( записывались в exe поверх старых. Но не судьба - проблем стало еще больше. Так что пока ручками линкую. - Это все написано по поводу троянов. Задачи разние бывают и решения то же разными бывают, может не оптимальными, но тоже имеющими право на существование.
← →
pwlusa (2002-09-19 17:38) [32]Ну спасибо прогеры-мудрецы.
А еще один такой вопросик?
А как его потом можно вытащить из exe файла.
Например у меня есть названия файлов вписанных в exe файле (все происходит при запущенном exe) я выбираю определенное имя у меня должно выскочить окно типа куда его сохранить.
Плиз подскажите.
← →
Юрий Зотов (2002-09-20 01:36) [33]> Serg Gurin (19.09.02 01:42)
> Задачи разние бывают и решения то же разными бывают
Это верно. Но, я надеюсь, Ваши файлы вместе с Exe Вы не рассылаете по почте?
А тут получилась обратная ситуация - не задача говорит о решении, а решение говорит о задаче. Вот в чем дело-то.
> pwlusa © (19.09.02 17:38)
> А как его потом можно вытащить из exe файла.
1. resourcestring или LoadStr - для строк.
2. TResourceStream - для любых ресурсов.
Страницы: 1 вся ветка
Текущий архив: 2002.11.18;
Скачать: CL | DM;
Память: 0.52 MB
Время: 0.008 c