Форум: "Основная";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];
Вниз*.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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.135 c