Сделать иконку программе

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Сделать иконку программе

Сообщение Rain » 31.12.2006 09:05:02

Подскажите, пожалуйста, как можно сделать иконку программе на FreePascal без Лазаруса? Там наверно просто, но очень не хочется тянуть 40 Мб.

upd: Имеется ввиду, что есть файл в формате ico и его надо как-то запихнуть в программу в качестве иконки.
Rain
новенький
 
Сообщения: 21
Зарегистрирован: 19.10.2006 03:12:00

Сообщение FedeX » 31.12.2006 11:38:48

В Лазаре тож вроде пока нет нормального добавления иконки в проект.
Я делал так: создавал в своём редакторе ресурсов ресурс "my.res", кидал туда иконку,добавлял в исходах в самом начале строчку {$R my.res}.

Если у тебя нет какого-нидь редактора ресурсов можно попробовать консольный windres.exe из директории bin FPC. Правда я так и не раздуплил как с ним работать. Постоянно ошибки выдаёт...

А лучше скачай Лазарус - я тож LCL не пользуюсь, но текстовый редактор там просто офигенный :twisted:
Аватара пользователя
FedeX
постоялец
 
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Сообщение @lex » 31.12.2006 13:29:42

ResHacker всё может! Причём уже с рабочим exe-шником!

2 FedeX:
Советую FreePascal Shell от Badhim-а (badhim.h11.ru) - всё нравится, только не хватает списка функций и процедур модуля слева от кода (для удобства навигации как в Delphi), но Лазарусе тоже до этого ещё не додумались.
@lex
постоялец
 
Сообщения: 180
Зарегистрирован: 19.06.2006 13:16:29
Откуда: Невинномысск

Сообщение FedeX » 01.01.2007 15:10:14

@lex писал(а):ResHacker всё может! Причём уже с рабочим exe-шником!


Да, я тож им пользуюсь. Жаль токо он сам не создаёт res файлы. Я обычно беру пустой res из своего старого проекта на Делфи и пихаю туда ResHack-ом всякие ресурсы. Особно нравится как он редактирует диалоги. Хотя чтоб добавить новый диалог приходится целую мудрёную операцию проделывать. :(

Советую FreePascal Shell


Да, не плохой редакторчик... Спасибо. Но многих моих любимых сочетаний клавиш нема. И подсказок. И обозревателя кода, хотяб такого как в лазаре. :(

Если уж на то пошло, то лучше тогда Dev-Pascal. Там почти всё это есть. Токо у меня последняя версия глючила. Мож потому что у меня ещё и Dev-Cpp стоит?...
Аватара пользователя
FedeX
постоялец
 
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Сообщение badaninslava » 30.10.2007 22:27:59

Использую Dev-Pascal http://www.bloodshed.net/devpascal.html . Приделал его к новому компилятору(2.2-я версия fpc). Прописываю все пути. Указываю опции проекта, а иконку для программы не ставит. Устанавливаю всё по-умолчанию(1-я версия fpc)-иконка появляется. В чём глюк?
И ещё- пытался как делал в делфи поспользоваться {$R *.res}. Потом открываю ресхакером-содержимое ресурсного файла в exe-шник не прикручивается...
Может я что не так делаю.. Кто-нибудь работал с ресурсами? Пришлите демку..
badaninslava
постоялец
 
Сообщения: 101
Зарегистрирован: 12.12.2005 01:21:44

Сообщение badaninslava » 30.10.2007 23:38:21

Ну вот. Скомпилировал при помощи brcc32.exe файл ресурсов.
А мне тут ошибка: Error: Can not open resource file: c:\My\Rc3.res
badaninslava
постоялец
 
Сообщения: 101
Зарегистрирован: 12.12.2005 01:21:44

Сообщение badaninslava » 31.10.2007 00:06:22

Нашел ответ:
Надо скомпилировать ресурса в объектный файл и слинковать его при помощи {$L resource.o}
Только теперь новый вопрос: как можно r.res превратить r.o?
Понимаю вопрос ламовый, но не судите строго..
badaninslava
постоялец
 
Сообщения: 101
Зарегистрирован: 12.12.2005 01:21:44

Сообщение Attid » 31.10.2007 11:15:53

может немного не то, но взгляни сюда
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение debi12345 » 31.10.2007 11:58:07

1) слепить картинку "podpiska.ico"

2) создать файл импорта картники "podpiska-icon.res" следующего содержания

AppIcon ICON "podpiska.ico"

3) в PROGRAM-файле проекта, перед BEGIN:

{$ifdef mswindows} // это в MSEgui, у Lazarus может быть другое
{$R podpiska-icon.res}
{$endif}


Все.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение Padre_Mortius » 31.10.2007 13:58:53

создается RC-файл следующего содержания

Код: Выделить всё
MAINICON ICON "podpiska.ico"


Этот файл компилируется при помощи утилиты windres.exe в файл ресурса который уже и прописывается в проекте с помощью директивы
Код: Выделить всё
{$R *.res}
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение debi12345 » 31.10.2007 15:33:44

Этот файл компилируется при помощи утилиты windres.exe в файл ресурса который уже и прописывается в проекте с помощью директивы

Да, уже и забыл про это.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение Padre_Mortius » 31.10.2007 16:52:59

Компилировать файл RC вручную не нужно, если в файле проекта просто указать директиву
Код: Выделить всё
{$R *.rc}


Правда это работает только под Win32
Padre_Mortius
энтузиаст
 
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Attid » 31.10.2007 19:25:21

а под линь все равно иконок нет.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2586
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение badaninslava » 31.10.2007 22:11:47

Код: Выделить всё
{$R *.rc}

У меня его использование почему-то не катит, а
Код: Выделить всё
{$L *.o}

без проблем работает...
badaninslava
постоялец
 
Сообщения: 101
Зарегистрирован: 12.12.2005 01:21:44

Сообщение alexs » 31.10.2007 23:39:23

Attid писал(а):а под линь все равно иконок нет

они есть - просто не так просто как в винде :-)
может кто доходчиво изложит, кто с эти сам сталкивался?
а то сам разберусь...
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

След.

Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

Рейтинг@Mail.ru