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

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

Иконка приложения [D7, WinXP]


dkDimon ©   (2002-12-21 19:13:00) 

Что-то я никак не воткну, по какому принципу вообще определяется иконка приложения (которая видна в Exporer"е)... И как ее поменять, не перекомпилируя проект (например, из специально написанной для этого программе)?


dkDimon   (2002-12-22 11:25:00) [1]

Проблема в том, что BeginUpdateResoruce, UpdateResource и EndUpdateResource пользоваться я умею. Легко получаю и меняю данные в RC_DATA. а вот с иконками никак не могу разобраться. Даже когда пытаюсь прочитать из exe иконку получается какая-то херня в 20 байт.

Вот такой код у меня (чтение иконки и запись в файл)...

var
hRes: HRSRC;
gRes: hGlobal;
hDll: hModule;
ResData: Pointer;
Str: TMemoryStream;
begin
hDll := LoadLibrary(PChar(FileName));
hRes := FindResource(hDll, "MAINICON", RT_GROUP_ICON);
gRes := LoadResource(hDll, hRes);
ResData := LockResource(gRes);
if ResData = nil then Exit;
Str := TMemoryStream.Create;
Str.Write(ResData^, SizeOfResource(hDll, hRes));
Str.SaveToFile("mainicon.ico");
Str.Free;
FreeLibrary(hDll);
end;


drin   (2002-12-22 01:13:00) [2]

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

windows.BeginUpdateResource
windows.UpdateResource
windows.EndUpdateResource


Читай справку, пробуй и всё получится ;)


Kotka   (2002-12-22 01:05:00) [3]

В поставке с делфи есть демо-проект Delphi6\Demos\ResXplor. Но он позволяет просматривать ресурсы. Изучай код, может и изменять ресурсы научишься...


Morfein   (2002-12-21 21:44:00) [4]

Хы... кодом всё тоже просто... только, смотря на что надо поменять...
Если размеры заменяемого и заменяющего [:))] значков совпадают, то я знаю как...
А если нет, то хз...


dkDimon   (2002-12-21 21:35:00) [5]

Ну что первая, это я уже и сам догадался. С помощью программ-редакторо ресурсов мне не подходит (я знаю как ее поменять с помощью редакторов), а мне нужно кодом поменять...


Morfein   (2002-12-21 20:36:00) [6]

Первая...


Kotka   (2002-12-21 20:29:00) [7]

>по какому принципу вообще определяется иконка приложения
Первая или последняя (не помню) иконка в ресурсах приложения.

>И как ее поменять, не перекомпилируя проект
С помощью программ-редакторов ресурсов, правда как после такой правки себя будет вести прога, никому не известно


dkDimon   (2002-12-21 19:24:00) [8]

Почему это не получится?


$Angel$!!!   (2002-12-21 19:18:00) [9]

Наверно не получицца!


Наверх

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