![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не всегда появляется трей-иконка [D7, Win95/98, WinXP]
Leaner © (2004-10-05 19:30:00)Здравствуйте ! У меня такая проблема:
Программа стартует вместе с Windows из Run регистра.
И трей-иконка не всегда появляется( но создается ).
В чем может быть дело ?
function CreateDeleteTrayIcon(Num:integer;AddIco:Boolean):Boolean;
var
Nidata:TNotifyIconData;
begin
SendMessage(Application.MainForm.Handle,WM_USER+1715,Integer(not AddIco),-1);
Nidata.cbSize:=SizeOf(TNotifyIconData);
Nidata.Wnd:=Application.MainForm.Handle;
Nidata.uID:=Num;
if AddIco then
begin
Nidata.uFlags:=NIF_ICON or NIF_MESSAGE or NIF_TIP;
Nidata.uCallBackMessage:=WM_USER+1715
Nidata.hIcon:=Application.Icon.Handle;
StrPCopy(NiData.szTip,AppName);
Result:=Shell_NotifyIcon(NIM_ADD,@Nidata);
Exit;
end;
Result:=Shell_NotifyIcon(NIM_DELETE,@Nidata);
end;
Функция вызывается в .dpr после
Application.CreateForm(TMainForm, MainForm);
GuAV (2004-10-06 01:54:00) [1]А если
Nidata.hIcon:=LoadImage(hInstance, 'MAINICON',
IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR); ?
Cobalt (2004-10-06 00:45:00) [2]1)
>>А Result проверяешь?
>Да, дважды: получаю SendMessage и смотрю результат
И...?
2)
>>В какой ОС проявляется?
>XP
А в Win2K/NT?
Leaner (2004-10-05 22:49:00) [3]>Cobalt
>А Result проверяешь?
Да, дважды: получаю SendMessage и смотрю результат
>И Run - какой?
HKEY_LOCAL_MACHINE
>В какой ОС проявляется?
XP
Cobalt (2004-10-05 22:03:00) [4]А Result проверяешь?
И Run - какой?
В какой ОС проявляется?