Вы не авторизированы! Логин:  Пароль:  Запомнить:    Зарегистрироваться
Забыл пароль
 
 
 

Как включить JPG-файл внутрь exe-файла?

SVD programming - Программирование Delphi, HTML, PHP, CGI. Обзоры софта, ReactOS и многое другое...
 
Главная - Новости - Публикации - Файлы - Ссылки - Форум Обратная связь
 


Друзья сайта ::

Сайтом управляют ::

Друзья сайта ::
Delphi » Как включить JPG-файл внутрь exe-файла?
Автор: Admin / Дата: 20:36 16.02.2006
Комментарии: Комментарии (2)
Рейтинг статьи: 0
Первое:

Нужно создать resource script file (*.RC) с помощью простого текстового файла (например блокнота), и вписать всего одну строку:
1 RCDATA "MyPic.jpg"
Единичка – это просто номер ресурса, RCDATA - определяет, что мы имеем дело с user-defined resource. Последнее – имя файла с JPG рисунком.


Второе:

Компилируем его в .RES файл, при помощи BRCC32.EXE. В MS-DOS набираем:
BRCC32 MyPic.RC
Это должно создать файл MyPic.RES.


Третье:

Добавляем директиву компилятор в исходный код нашей программы. Она должна следовать за директивой формы, как показано здесь:

{$R *.DFM}
{$R MyPic.RES}


Четвертое:

Добавляем следующую процедуру в программу:
Код:
procedure LoadJPEGfromEXE;
var
MyJPG : TJPEGImage; // JPEG
ResStream : TResourceStream; // Resource Stream
begin
MyJPG := TJPEGImage.Create;
ResStream := nil;
try
ResStream := TResourceStream.CreateFromID(HInstance, 1, RT_RCDATA);
MyJPG.LoadFromStream(ResStream); // ДА! Так просто :)
Canvas.Draw(12,12,MyJPG); // Нарисуем на Canvas, чтобы убедиться, что все работает!
finally
MyJPG.Free;
ResStream.Free;
end;
end; // procedure


Посмотрите на второй параметр процедуры CreateFromID объекта TresourceStream. Это просто индекс ресурса. Вы можете включить более, чем один jpeg в своей программе просто добавляя новую строчку для каждого jpeg (с другим индексом) в .RC файл
Источник: http://delphimaster.ru
Автор : Admin
Комментарии: Комментарии (2)

Внимание!

Друзья сайта
Голосование ::
Случайные статьи ::
Добавления в форуме ::
Новые комментарии ::
Пользователи on-line ::
0 пользователь, 117 гостей
 
Страница создана за 0.011 секунд

SQL общее время: 0.004 секунд
SQL запросов всего: 15
Администрация сайта не несет ответственности за содержание рекламных материалов, а так же за информацию размещаемой посетителями. При использовании материалов сайта ссылка на svdpro.info обязательна.

Powered by LDU 802

Рейтинг@Mail.ru
Copyright © 2005 - 2011 «SVD Programming»
Версия сайта для коммуникаторов
Обратная связь - Карта сайта