Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001

Здесь есть возможность читать онлайн «Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Советы по Delphi. Версия 1.4.3 от 1.1.2001: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Советы по Delphi. Версия 1.4.3 от 1.1.2001»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

…начиная с 1001. Смотрите другие файлы…

Советы по Delphi. Версия 1.4.3 от 1.1.2001 — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Советы по Delphi. Версия 1.4.3 от 1.1.2001», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

BRCC strings.rc

Вы получите файл с именем strings.res. В вашем .DPR-файле после строки {$R *.RES} добавьте строку {$R STRINGS.RES}, после этого строковые ресурсы будут компилироваться с вашим exe-файлом.

– Ralph Friedman

Компиляция ресурсов

У меня имеется приблизительно 36 маленьких растровых изображений, которые я хочу сохранить в файле и затем прилинковать его к exe. Как мне поместить их в res-файл?

Самый простой путь – создать файл с именем «BITMAPS.RC» и поместить в него список ваших .BMP-файлов:

BMAP1 BITMAP BMAP1.BMP

BMAP2 BITMAP BMAP2.BMP

CLOCK BITMAP CLOCK.BMP

DBLCK BITMAP DBLCK.BMP

DELOK BITMAP DELOK.BMP

LUPE BITMAP LUPE.BMP

OK BITMAP OK.BMP

TIMEEDIT BITMAP TIMEEDIT.BMP

Затем загрузите Resource Workshop (RW) и выберите пункт меню File|Project Open. В выпадающем списке «File Type» (тип файла) выберите RC-Resource Script и откройте файл, который вы только что создали. После того, как RW загрузит ваш файл, выберите пункт меню File|Project save as. Выберите объект RES-Resource из выпадающего списка «File Type» (тип файла). В поле редактирования «New File name» задайте имя нового файла, скажем, BITMAPS.RES. Нажмите OK. Теперь у вас есть файл ресурса. В вашем модуле Delphi добавьте после строки {$R *.RES} строку {$R BITMAPS.RES}. После компиляции вы получите exe-файл с скомпилированными ресурсами. Для получения доступа к ресурсам во время выполнения программы нужно сделать следующее:

myImage.Picture.Bitmap.Handle := LoadBitmap(HInstance, 'TIMEEDIT');

В качестве предостережения: убедитесь в том, что имена (в самой левой колонке) изображений в .RC файле написаны в верхнем регистре, при вызове также необходимо писать их имена в верхнем регистре.

-Ralph Friedman

Ошибка дублирования идентификатора ресурса

Delphi 1

У вас есть исходный код VCL? Если да, то в этом случае ее можно всю перекомпилировать, добавив каталог к вашему библиотечному пути (Library path) в опциях среды (Environment Options | Library). Я думаю это нужно сделать, чтобы отделаться от этой ошибки. При другом способе необходимо вычислить вызывающую проблему директиву $R, временно удалить ее, и осуществить перекомпиляцию. Временно выключить директиву $R можно добавлением '.' перед $ (но это не единственный путь выключить ее).

Вероятно, вы сабкласситесь от VCL. Убедитесь в том, что идентификатор ресурса для вашей иконки уникальный. Просто загрузите ее в любой редактор ресурсов, и измените ее номер. После этого вы должны пересобрать вашу библиотеку.

Сохранение и выдёргивание ресурсов в DLL или EXE

Письмо читателя

Иногда возникает необходимость вшить ресурсы в исполняемый файл Вашего приложения (например чтобы предотвратить их случайное удаление пользователем, либо, чтобы защитить их от изменений). Данный пример показывает как вшить любой файл как ресурс в EXE-шнике. Совместимость: Delphi 3.x (или выше)

Далее рассмотрим, как создать файл ресурсов, содержащий корию какого-либо файла. После создания такого файла его можно легко прицепить к Вашему проекту директивой {$R}. Файл ресурсов, который мы будем создавать имеет следующий формат:

+ заголовок

+ заголовок для нашего RCDATA ресурса

+ собственно данные - RCDATA ресурс

В данном примере будет показано, как сохранить в файле ресурсов только один файл, но думаю, что так же легко Вы сможете сохранить и несколько файлов.

Заголовок ресурса выглядит следующим образом:

TResHeader = record

DataSize: DWORD; // размер данных??????

HeaderSize: DWORD; // размер этой записи

ResType: DWORD; // нижнее слово = $FFFF => ordinal

ResId: DWORD; // нижнее слово = $FFFF => ordinal

DataVersion: DWORD; // *

MemoryFlags: WORD;

LanguageId: WORD; // *

Version: DWORD; // *

Characteristics: DWORD; // *

end;

Поля, помеченные звёздочкой, Мы не будем использовать. Приведённый код создаёт файл ресурсов и копирует его в данный файл:

Листинг 1:

procedureCreateResourceFile(

DataFile, ResFile: string; // имена файлов

ResID: Integer // id ресурсов

);

var

FS, RS: TFileStream;

FileHeader, ResHeader: TResHeader;

Padding: array[0..SizeOf(DWORD)-1] ofByte;

begin

{ Open input file and create resource file }

FS := TFileStream.Create( // для чтения данных из файла

DataFile, fmOpenRead);

RS := TFileStream.Create( // для записи файла ресурсов

ResFile, fmCreate);

{ Создаём заголовок файла ресурсов - все нули, за исключением HeaderSize, ResType и ResID }

FillChar(FileHeader, SizeOf(FileHeader), #0);

FileHeader.HeaderSize := SizeOf(FileHeader);

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Представляем Вашему вниманию похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Обсуждение, отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x