Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.06;
Скачать: CL | DM;

Вниз

Иконка приложения   Найти похожие ветки 

 
dkDimon ©   (2002-12-21 19:13) [0]

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


 
$Angel$!!! ©   (2002-12-21 19:18) [1]

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


 
dkDimon ©   (2002-12-21 19:24) [2]

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


 
Kotka ©   (2002-12-21 20:29) [3]

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

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


 
Morfein ©   (2002-12-21 20:36) [4]

Первая...


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

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


 
Morfein ©   (2002-12-21 21:44) [6]

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


 
Kotka ©   (2002-12-22 01:05) [7]

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


 
drin ©   (2002-12-22 01:13) [8]

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

windows.BeginUpdateResource
windows.UpdateResource
windows.EndUpdateResource


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


 
dkDimon ©   (2002-12-22 11:25) [9]

Проблема в том, что 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;



Страницы: 1 вся ветка

Текущий архив: 2003.01.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
6-15183
Nick N A
2002-10-30 07:57
2003.01.06
TNMPOP3 Прием почты.


1-15002
Mic_2000
2002-12-18 15:08
2003.01.06
Как можно узнать какие строки выделены в StringGrid?


3-14967
Rule
2002-12-12 00:32
2003.01.06
Помогите конвертировать таблицы


1-15103
atmospheric
2002-12-20 13:19
2003.01.06
ListView тормозит...


6-15206
nickolayLI
2002-11-05 14:32
2003.01.06
как отловить сообщение