Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.28;
Скачать: CL | DM;

Вниз

*.exe в *.exe   Найти похожие ветки 

 
Valentin   (2005-08-08 19:07) [0]

Я создал res файл подключил его к проекту, а вот как его распаковать по нажатию кнопки не знаю.


 
Fay ©   (2005-08-08 19:27) [1]

Так. Не проверял.
var
 r, szh, n : DWORD;
begin
 r := FindResource(hInstance, "MY_FILE", RT_RCDATA);
 sz := SizeofResource(hInstance, r);
 h := CreateFile(PChar(ExtractFileDir(Application.ExeName)+MyFile.exe), 0, 0, nil, CREATE_ALWAYS, 0, 0);
 WriteFile(h, LoadResource(hInstance, r), sz, n, nil);
 CloseHandle(h);
end;


 
Наиль ©   (2005-08-08 19:43) [2]

Способ второй. Классический.
Var
rs:TResourceStream;
fs:TFileStream;
begin
rs:=TResourceStream.Create(HInstance,"proga",RT_RCDATA);
fs:=TFileStream.create("proga.exe",fmCreate);
fs.CopyFrom(rs,rs.Size)
fs.Free;
rs.Free;
end;

Проверено, комаров нет.


 
Fay ©   (2005-08-08 20:11) [3]

WriteFile(h, Pointer(LoadResource(hInstance, r))^, sz, n, nil);


 
Valentin   (2005-08-08 23:32) [4]

Наиль ©   (08.08.05 19:43) [2]
А чё надо вписывать за место
rs:=TResourceStream.Create(HInstance,"proga;",RT_RCDATA)??


 
Наиль ©   (2005-08-09 00:11) [5]

вместо "proga", пиши под каким названием хранишь прогу в ресурсе.


 
Valentin   (2005-08-09 00:15) [6]

Я когда компилировал res файл то в rc писал так:
VIRUS EXEFILE "My.EXE"

Так что мне писать вместо proga?


 
3DxFantastika ©   (2005-08-09 01:56) [7]

Valentin   (09.08.05 0:15) [6]
VIRUS  только название смени, а то и правда некрасиво ...


 
Наиль ©   (2005-08-09 02:39) [8]

Вместо "proga" - "virus"
Вместо RT_RCDATA - "exefile"



Страницы: 1 вся ветка

Текущий архив: 2005.08.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.06 c
5-1095098525
Константинов
2004-09-13 22:02
2005.08.28
Свойства массивы в процедуре Assign


4-1117686064
Sir
2005-06-02 08:21
2005.08.28
Серийный номер видеокарты & материнской платы


1-1123492939
a80h19
2005-08-08 13:22
2005.08.28
скопировать объекты-классы


1-1123447715
makvell
2005-08-08 00:48
2005.08.28
А как бы поподробнее и на русском узнать...


1-1123175284
Андрей Молчанов
2005-08-04 21:08
2005.08.28
получить интерфейс IShellFolder