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

Вниз

Отслеживание перезагрузки оболочки Windows   Найти похожие ветки 

 
Woolen   (2003-09-12 13:18) [0]

Здравствуйте. Подскажите пожалуйста. Может кто-нибудь знает... Как отследить перезагрузку оболочки Windows (explorer.exe)? Нужно при перезагрузке ее поместить заново иконку в трей, чтобы к приложению по-прежнему был доступ у пользователя. Говорят, есть какое-то сообщение, причем оно может быть разным (на уровне числа) и что нужно узнавать где-то в винде, каое число сейчас зарегистрированно как сообщение о перезагрузке оболочки. Помогите разобраться, пожалуйста: Насколько оправданы такие слухи? Можно ли отследить этот момент? Если можно, то как? Спасибо всем, кто в состоянии мне помочь.


 
Bes ©   (2003-09-12 13:28) [1]

Woolen на этом сайте есть компонент помойму TrayIcon (посмотри в VCL) он какрас работает с треем и все такое и у него функция появления иконки после слета експлорера..


 
Woolen   (2003-09-12 13:42) [2]


> Woolen на этом сайте есть компонент помойму TrayIcon (посмотри
> в VCL) он какрас работает с треем и все такое и у него
> функция появления иконки после слета експлорера..

Спасибо большое. Жаль, что я компонентами пользоваться не люблю. Может, если они есть, исходники, посмотрю.
В общем, спасибо


 
clickmaker ©   (2003-09-12 13:43) [3]

Если IE >= 4, то можно через RegisterWindowMessage("TaskbarCreated")


 
Woolen   (2003-09-12 14:07) [4]


> clickmaker © (12.09.03 13:43) [3]
> Если IE >= 4, то можно через RegisterWindowMessage("TaskbarCreated")

а что дальше? если придет это сообщение, значит эксплорер перезагрузился? или как событие отследить?


> и у него функция появления иконки после слета експлорера..

прочел сорцы - такой возможности не обнаружил...


 
clickmaker ©   (2003-09-12 15:54) [5]

Ну да. Примерно так:

FMessage := RegisterWindowMessage("TaskbarCreated");

...

procedure TForm1.WndProc(var Message: TMessage);
begin
if Message.Msg = FMessage then
// эксплорер загрузился
inherited WndProc(Message);
end;


 
Woolen   (2003-09-12 16:00) [6]


> clickmaker © (12.09.03 15:54) [5]
> Ну да. Примерно так:
>
> FMessage := RegisterWindowMessage("TaskbarCreated");
>
> ...
>
> procedure TForm1.WndProc(var Message: TMessage);
> begin
> if Message.Msg = FMessage then
> // эксплорер загрузился
> inherited WndProc(Message);
> end;

Спасибо. Надо будет попробовать.


 
DrPass ©   (2003-09-13 00:18) [7]

А так ли это актуально? Начиная с просервиспаченной Win2000 иконки из трея при перезапуске оболочки не исчезают


 
SPeller ©   (2003-09-13 02:28) [8]


> DrPass © (13.09.03 00:18) [7]
> А так ли это актуально? Начиная с просервиспаченной Win2000
> иконки из трея при перезапуске оболочки не исчезают

Вот когда у всех будет пропатченная 2К, тогда и актуальность пропадёт.


 
guest   (2003-09-13 14:31) [9]

нифига, на XP тиакая де лажа


 
DVM ©   (2003-09-14 14:43) [10]

Пропатченная - непропатченная все замечательно пропадает при хорошем вылете эксплорера. Сам механизм трея не позволяет нормально это сделать.



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

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

Наверх




Память: 0.49 MB
Время: 0.029 c
14-41989
Chuha
2003-10-16 21:15
2003.11.13
Lingvo


3-41083
Fast
2003-10-26 19:32
2003.11.13
Использование BLOB


6-41791
Demetrius
2003-09-17 19:10
2003.11.13
Как получить дату файла по FTP


1-41377
Aleksandr
2003-10-30 13:09
2003.11.13
Почему неправильно рисуется PageControl?


1-41560
Layner
2003-10-27 15:06
2003.11.13
У кого есть ф-я сохранения-чтения StringGrid в txt файл