Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?
Поиск
L


Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 9
Всего онлайн: 9
Зарегистрировано юзеров: 5679
Комментариев на сайте: 619
Новый юзер: iwfrcc



Последние комментарии
c
baxodir прокомментировал "Урок 23 - Функции для работы с мышью":
Но Это мало можно ещё больше
pronin106 прокомментировал "Урок 27 - Создаем игру Ping-pong - часть(2/3)":
Все получилось! Спасибо за урок. У кого не получилось читайте внимательнее! Не делайте тупо копипаст



Мы в соцсетях
c
Delphi
Урок 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:

Результат


Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 21 Июля 2013
Просмотров:

Урок 65 - Ресурсы в Delphi, (часть 1/2) Урок 67 - INI файлы

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.