Урок 66 - Ресурсы в Delphi, (часть 2/2)
В Delphi поддерживаются следующие типы ресурсов
- RT_ACCELERATOR - таблица ускорителей
- RT_ANICURSOR - анимированный курсор
- RT_ANIICON - анимированная икона
- RT_DIALOG - диалоговое окно
- RT_FONT - шрифт
- RT_FONTDIR - набор шрифтов
- RT_GROUP_CURSOR - коллекция курсоров
- RT_BITMAP - коллекция курсоров
- RT_GROUP_ICON - коллекция иконок
- RT_HTML - HTML документ
- RT_MENU - меню
- RT_MESSAGETABLE - таблица сообщений
- RT_STRING - таблица строк
- RT_VERSION - ресурс версия ,
Напишем еще одну программку, она будет распаковывать нам другую программу, пример из прошлого урока.
Для этого создадим ресурс по инструкции из прошлого урока. Поместим пример из предыдушего урока в папку с компилятором ресурсов и под редактируем файл Res.rc:
PROGRAM EXE Project.exe
где Project.exe имя примера. Создадим ресурс и подключим его в новой программе, также там добавим кнопку и диалог сохранения, в обработчике на кнопке напишем следующий код:
procedure TForm1.Button1Click(Sender: TObject); begin; if SaveDialog1.Execute then ExtractRes('EXE', 'PROGRAM', SaveDialog1.FileName); end;Теперь над этим обработчиком напишем функцию ExtractRes:
procedure ExtractRes(ResType, ResName, FileName : String); var Res : TResourceStream; begin Res := TResourceStream.Create(Hinstance, Resname, Pchar(ResType)); Res.SavetoFile(FileName); Res.Free; end;Функция принимает значения: Тип, Имя, Куда сохранить. Создается поток в памяти где будет храниться программа, сохраняется и поток удалятся.
Компилируем и смотрим что получилось, сохраним например на рабочий стол с названием 1.exe:
Удачи!
Встретимся в следующем уроке!
No results found.