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

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 2
Всего онлайн: 2
Зарегистрировано юзеров: 6358
Комментариев на сайте: 645
Новый юзер: Realtyvaday



Последние комментарии
c
Aqel прокомментировал "Урок 71 - Работа с сжатыми файлами":
GZip псевдоархив, на мой вопрос тоже не отвечают, как распаковать отдельные файлы/папки...
Pingitrus прокомментировал "Урок 71 - Работа с сжатыми файлами":
Есть еще кто нибудь живой на этом сайте, кто сможет помочь? Так то все работает, zip и rar распаковывает, но у меня есть файл dat который сжат GZip, почему то его не удается распаковать или так не получится так как этот файл не является архивом или является?)) пишет ошибку что неверная функция



Мы в соцсетях
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 файлы

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