Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Похоже, я разучился собирать res-файл... [D7, WinXP]


Aleksandr. ©   (2005-09-20 15:26:00) 

rc-файл gifs.rc следующего содержания:

L1 RCDATA "a1.gif"
L2 RCDATA "a2.gif"
L3 RCDATA "a3.gif"
HOUR RCDATA "hour.gif"
CONNECT RCDATA "connect.gif"
EDIT RCDATA "edit.gif"
STOP RCDATA "stop.gif"
SMILE1 RCDATA "smile1.gif"
SMILE2 RCDATA "smile2.gif"
SMILE3 RCDATA "smile3.gif"
SMILE4 RCDATA "smile4.gif"
SMILE5 RCDATA "smile5.gif"
SMILE6 RCDATA "smile6.gif"
SMILE7 RCDATA "smile7.gif"

выполняю brcc32 gifs.rc, создается gifs.res. В программе его подключаю в главном окне:

{$R *.dfm}
{$R gifs.RES}

Запускаю программу - на половине попыток
LoadFromResourceName она меня посылает типа ресурс не найден.
Смотрю на файл ресурсов через Image Editor - там полный бред пишется, дерево с левыми названиями и ссылками, видны только нормально отрабатывающие иконки. Что за фигня?


Fay   (2005-09-20 17:33:00) [1]

2 Aleksandr.   (20.09.05 17:29) [6]
>> ругается на этапе компиляции
Это сурово...


Aleksandr.   (2005-09-20 17:29:00) [2]

Fay ©  :
После LoadResource работает.

При добавлении к проекту ругается на этапе компиляции. Ну и фиг с ней, будем на уровне winapi вытаскивать.


Fay   (2005-09-20 16:53:00) [3]

2 Aleksandr.   (20.09.05 16:49) [4]
>> Ох мля... надо же так лопухнуться...
Хде?

>> Про .rc: она ругается... грит, что унсуппортед
Ты добавил его к проекту ( {$R 'YourRes.res' 'YourRes.rc'}) и он ругнулся КОГДА?

Короче, работает?


Aleksandr.   (2005-09-20 16:49:00) [4]

Ох мля... надо же так лопухнуться...
Про .rc: она ругается... грит, что унсуппортед


Fay   (2005-09-20 16:34:00) [5]

2 Aleksandr.   (20.09.05 16:30) [1]
А LoadResource ен нужен?


Fay   (2005-09-20 16:31:00) [6]

2 Aleksandr.   (20.09.05 15:26)
Просто прибей .rc к проекту, чё будет?


Aleksandr.   (2005-09-20 16:30:00) [7]

Вообще ниче не понимаю... Сделал такой метод:

var
 x : cardinal;
 j : integer;
 P : Pointer;
begin
   FStream:=TMemoryStream.Create;
   try
     x:=FindResource(HInstance,PChar(ResName),RT_RCDATA);
     if x<>0 then begin
       j:=SizeOfResource(hInstance,x);
       P:=LockResource(x);
       FStream.Write(P^,j);
       FStream.SaveToFile(ResName+'.gif');
       FreeResource(X);
     end
 finally
   FStream.Free
 end
end;

Так вот апишными методами ресурс находится, но содержимое полученного файла совсем не гифовое... То ли он в ресурсы кривым попадает, то ли я совсем в маразм впал...


Наверх

Титульная страница Поиск, карта сайта Написать письмо