Загрузить Собственную Иконку

Vadik(R)

Well-Known Member
12.12.2007
469
0
25
Волгоград
#1
Добрый вечер, форумчане!
В недавней теме у меня возник вопрос, как загрузить собственную иконку в Tray. Так как Delphi мне ближе по душе, решил сделать этот момент вначале в этой среде, на C++ всегда переписать смогу. Так вот, у меня проблема такая. Есть иконка icon.ico, в которой содержатся иконки разных форматов - от 16 x 16 до 128 x 128. Мне надо, чтобы эта иконка прогрузилась в Tray. Решил вначале сделать так. Написать в icon.rc:
Код:
TrayIcon ICON icon.ico
Создать файл ресурсов и подключить к проекту. А далее написать:
Код:
NIData.hIcon := LoadIcon(GetModuleHandle(nil), 'TrayIcon');
В этом случае, нужная иконка в трее появлялась, но в тоже время, из-за строки подключения ресурсов, она появилась и у самого приложения. Потому я решил сделать так. В icon.rc написать:
Код:
TrayIcon RCDATA icon.ico
Но теперь иконка перестала грузится. Поискав новые функции и поэксперемнтировав с ними, я получил вот это::
Код:
NIData.hIcon := LoadIcon(LoadResource(0, FindResource(LoadLibrary(PChar(ParamStr(0))), 'icon.res', RT_RCDATA)), 'TrayIcon');
Знаю, что неправильно :(
Подскажите, пожалуйста, какой стоит указать тип ресурса в файле ресурсов и как потом загрузить из него свою иконку? Так, чтобы иконка появлалсь только в Tray, а у приложения осталась по умолчанию. Заранее спасибо :)