Форум: "WinAPI";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
ВнизОтлов сообщения о повторном выводе иконки Найти похожие ветки
← →
Piter © (2004-10-19 01:29) [0]Известно, что при перезапуске explorer исчезают иконки из TaskBar"а, при этом приложениям, у которых были иконки, посылается сообщение с просьбой заново вывести иконки. Какое это сообщение?
← →
GuAV © (2004-10-19 02:15) [1]RegisterWindowMessage("TaskbarCreated")
← →
GuAV © (2004-10-19 02:16) [2]зы А мне больше нравится видеть MF на таскбаре там же где и раньше ан не где часики.
← →
Piter © (2004-10-19 10:39) [3]GuAV © (19.10.04 2:15) [1]
RegisterWindowMessage("TaskbarCreated")
а при чем здесь регистрация нового сообщения? Может, ты не понял вопроса?
← →
Игорь Шевченко © (2004-10-19 10:51) [4]Piter © (19.10.04 10:39) [3]
Это ты не понял ответа и не хочешь читать MSDN или Google
← →
Nick Denry © (2004-10-19 15:16) [5]2Игорь Шевченко © (19.10.04 10:51) [4]
Это ты не понял ответа
Класс %)
Piter © (19.10.04 10:39) [3]
Внесу свои пять копееек - регистрируешь сообщение, и добавляешь его в обработку сообщений. Это сообщение посылается тогда, когда explorer загружается, т.е. предположительно перд этим он падает, -> вывод - необходимо заново поместить значок в трей.
← →
Piter © (2004-10-19 21:57) [6]Да, стормозил. Прошу прощения
← →
Михан (2004-10-24 17:06) [7]регистрируешь сообщение, и добавляешь его в обработку сообщений.
A кусок кода приведите пожалуста
← →
Nick Denry © (2004-10-24 21:01) [8]2Михан (24.10.04 17:06) [7]
см. GuAV © (19.10.04 02:15) [1]
← →
Михан (2004-10-24 21:20) [9]GuAV © (19.10.04 02:15) [1] я смотрел
Но никак неполучается отловить момент когда explorer загружается
← →
GuAV © (2004-10-25 00:07) [10]Михан (24.10.04 21:20) [9]
Тоже не понял ответа.
Следует читать в MSDN про RegisterWindowMessage
И про The Taskbar:
http://search.microsoft.com/search/results.aspx?qu=TaskbarCreated&View=msdn&st=b&c=0&s=1&swc=0
в Taskbar Creation Notification это описано с примером.
← →
abc (2004-10-25 19:09) [11]Михан (24.10.04 17:06) [7]
A кусок кода приведите пожалуста
Вот отсюда http://www.delphimaster.ru/cgi-bin/news.pl?showpage=26
скачай компонент CoolTrayIcon v. 4.1.1 (317Kb)
разломай его и копируй в свою программу
WM_TASKBARCREATED := RegisterWindowMessage("TaskbarCreated");
и всё что с зтим связано.
Там всё это есть.
← →
Михан (2004-10-26 14:13) [12]Ну никак неполучается отловить момент когда происходит перезагрузка Explorer"
Делаю так
unit USysTray;
interface
uses
Windows,Messages,SysUtils,Variants, Classes, Graphics, Controls, Forms,
ShellAPI, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
procedure FormDestroy(Sender: TObject);
procedure FormCreate(Sender: TObject);
private{ Private declarations }
procedure DefaultHandler(var Msg : TMessage);
public{ Public declarations }
end;
var Form1: TForm1;
NID: TNotifyIconData;
WM_TASKBARCREATED: Cardinal;
implementation
{$R *.dfm}
procedure IconADD;
begin
with NID do begin
cbSize := SizeOf(TNotifyIconData);
Wnd := Form1.Handle;
uId := 1;
uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
hIcon := Application.Icon.Handle;
szTip :="SysTray";
end;
Shell_NotifyIcon(NIM_ADD, @NID);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
WM_TASKBARCREATED := RegisterWindowMessage("TaskbarCreated");
IconADD;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
Shell_NotifyIcon(NIM_DELETE, @NID);
end;
procedure TForm1.DefaultHandler(var Msg :TMessage);
begin
if Msg.Msg = WM_TASKBARCREATED then IconADD;
end;
end.
Но почему то когда происходит перезагрузка Explorer" в procedure TForm1.DefaultHandler(var Msg :TMessage); ничего не пороисходит.
Помогите.
Очень нужна ваша помощь.
← →
grom (2004-10-26 19:42) [13]http://delphi.vitpc.com/asp/answer.asp?IDAnswer=26312
← →
GuAV © (2004-10-26 21:13) [14]Михан (26.10.04 14:13) [12]
procedure DefaultHandler(var Msg : TMessage);
На этой строке никаких варниногв не возникает ?
Если нет то они отключены и видимо напрасно.procedure DefaultHandler(var Message); override;
← →
Михан (2004-10-27 08:03) [15]С procedure DefaultHandler(var Message); override;
вместо procedure DefaultHandler(var Msg : TMessage);
все заработало.
GuAV спасибо.
Пример grom тоже работает.
Спасибо всем.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.04 c