Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Как запустить exe


Автор: Des666 1.11.2006, 17:27
Вот например у меня есть один exe файл я сделал из него resurse.RES
по средством brcc32
файл resurse.rc выглядел так
First EXE thebrr.exe
В проект я его подключил 
{$R resurse.RES}

А вот теперь собственно сам вопрос:
Как-же мне его теперь запустить то из программы?

Автор: Alexeis 1.11.2006, 17:48
Des666, Лучше всего его вначале сохранить на диск, а затем запускать его оттуда. Можно, конечно это сделать прямо из памяти, но антивирусы очень не любят операций записи в память чужого процесса.

Автор: Des666 1.11.2006, 19:06
Вот именно что мне нужен 1 файл а не 2...
А с чего они будут ругаться на запись в память? Вроде они сразу проверяют файл на наличие вирусов...
В общем то я вирусов никогда не писал, поэтому незнаю как их ищут антивирусы...
Что кто нибудь подскажет?

Автор: Guedda 1.11.2006, 19:43
Цитата(Des666 @  1.11.2006,  19:06 Найти цитируемый пост)
В общем то я вирусов никогда не писал, поэтому незнаю как их ищут антивирусы...
Что кто нибудь подскажет?

В стандартной ситуации антивирус распознаёт вирус следующим образом:
Просто приоритет вирусовости.
Допустим, у тебя есть два файла: один простой бинарник, который просто индексирует все файлы на компе, а другой - бинарник с вшитым туда вирусом, который распространяется по бинарникам.
Оба в своём теле имеют конструкцию, допустим, такую:
Код

push esi
push edi
call RegisterServiceProcess,1

Антивирус этим двум файлам ставит приоритет +1. Если Оценка больше 0, антивирус начинает следить за первым запуском файла.
После первого запуска простой бинарник начал сканировать вирусы, и антивирус ему ставит +1. А файл, содержащий вирус, начал дописывать себя в другие программы, антивирус это замечает, и ставит вирусу +8 (этого достаточно, чтобы начать лечение, либо удалять файл), а всем файлам, которые успел заразить вирус, ставит приоритет +1.

Все цифры и код выдуманные мной, а принцип действия антивируса таков.

Автор: Romikgy 1.11.2006, 19:45
Цитата(Des666 @  1.11.2006,  18:06 Найти цитируемый пост)
А с чего они будут ругаться на запись в память?

потому как вирусы делают тоже smile и кто знает что твои действия правильные для системы, а вдруг это новый вирус, дык антивирус его просто заблокирует до выяснения. А выяснение может быть и через юзера, и через саппорт антивируса  smile так что решай smile

Автор: Des666 1.11.2006, 20:11
Так я не вирус же пишу  smile 
Спасибо конечно за инфу но мне она ни кчему...зато хоть буду знать как антивирусы работают =)
Мне нужно запустить нормальную программу! *.exe (она в ресурсах уже) из моей программы... и должен быть всего 1 исполняемый фаил...

Автор: Romikgy 1.11.2006, 21:29
Цитата(Des666 @  1.11.2006,  19:11 Найти цитируемый пост)
Так я не вирус же пишу

smile а ты это потом будешь антивирусу доказывать smile

Автор: Alexeis 1.11.2006, 21:40
Des666, Просто есть один рабочий код, но каспер его жуть как не любит из-за тех самых операций smile 

Автор: Des666 1.11.2006, 22:35
Если этот код для моего случая, то если можешь напиши пожалуйста...

Автор: Alexeis 2.11.2006, 11:24
http://alexei-s1.narod.ru/95d3_Run_In_Memory.rar

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)