Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2008, 23:59   #1
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию Кэш процесса Explorer.exe

Здравствуйте.

У меня беда.
Мне как-то нужно сохранить кэш процесса Explorer.exe.
есть такое понятие кэш трэя. так вот мне его нужно во время загрузки сохранить, что бы при необходимости загрузить. Т.к. если процесс закрыть, а потом запустить, то не все иконки появляются. Или посоветуйте, как их вернуть без перезагрузки системы или "Выхода" из системы.
(процесс я не специально закрываю, бывают ошибки и он "вылетает".)

функции желательно для Delphi.

спасибо.
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 16.03.2008, 00:52   #2
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от Air Посмотреть сообщение
........есть такое понятие кэш трэя.
Air, нет такого понятия. Так же, как и "кэш процесса". А эксплорер просто так уже очень-очень давно не падает.
B_N вне форума Ответить с цитированием
Старый 16.03.2008, 09:51   #3
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Однако после рестарта эксплорера пропадание иконок в трее наблюдается.
Скорее всего при начальной загрузке программ, они кидают иконки в трей, но если перезагрузить эксплорер, то он про них ничего не знает, вот и не показывает. Те что остаются видимо сами себя обновляют. (Если я что нибудь в чем нибудь понимаю =)
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 16.03.2008, 10:03   #4
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от mutabor Посмотреть сообщение
Скорее всего при начальной загрузке программ, они кидают иконки в трей, но если перезагрузить эксплорер, то он про них ничего не знает, вот и не показывает. Те что остаются видимо сами себя обновляют. (Если я что нибудь в чем нибудь понимаю =)
Именно так. Те, кто периодически вызывает Shell_NotifyIcon, скажем, чтобы изобразить анимацию, появляются снова, а про тех, кто это сделал единожды, новый эксплорер "не в курсе".
B_N вне форума Ответить с цитированием
Старый 16.03.2008, 10:58   #5
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Цитата:
Сообщение от B_N Посмотреть сообщение
Air, нет такого понятия. Так же, как и "кэш процесса". А эксплорер просто так уже очень-очень давно не падает.
Есть, в программе CCleaner 1.31, на вкладке "Очистка -> Windows", карегория "Другие" -> "Кэш уведомления из трея".

просто я более кратко выразился (возможно не правильно)
Цитата:
Те, кто периодически вызывает Shell_NotifyIcon
А как мне заставить программу вызвать это событие не закрывая приложение (но закрыть я могу только убив процесс, ведь иконка была единственным средством управления, а так я теряю данные программы)
Или как мне "оповестить" Explorer об этих иконках.

Цитата:
А эксплорер просто так уже очень-очень давно не падает.
падает ещё как, особенно когда сервис факс-модема глючить начинает, а бывает из-за того что AVI файл прочесть не может(так бывает когда после редакции плохо "скипилируется" (запишется) на диск) - выдаёт ошибку:"Active Windiw Error 0x000000ff" - адрес бывает разный, жмёщь Ок - и Explorer перезапускается.
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 16.03.2008, 15:19   #6
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от Air Посмотреть сообщение
Есть, в программе CCleaner 1.31, на вкладке "Очистка -> Windows", карегория "Другие" -> "Кэш уведомления из трея".
Сложности перевода, насколько я понимаю. Имеется в виду
HKEY_CURRENT_USER\Software\Microsof t\Windows\Curre ntVersion\Explorer\TrayNotify со значениями "IconsStream" и "PastIconsStream"

Эксплорер держит там гору "прошлых" иконок, видимо в целях обеспечения жутко полезной опции "Hide inactive icons". Это расценивается, как нарушение privacy, да и вообще, в реестре и без этого хлама хватает. С "оживлением" иконок это никак не связано.

Цитата:
Сообщение от Air Посмотреть сообщение
А как мне заставить программу вызвать это событие не закрывая приложение (но закрыть я могу только убив процесс, ведь иконка была единственным средством управления, а так я теряю данные программы)
Или как мне "оповестить" Explorer об этих иконках.
Нич-чо не понял. Какую программу и какое приложение? Shell_NotifyIcon - это не сообщение, это функция, которая ставит иконки. Если Вы о своей программе, так вызывайте просто её время от времени.


Цитата:
Сообщение от Air Посмотреть сообщение
падает ещё как, особенно когда сервис факс-модема глючить начинает, а бывает из-за того что AVI файл прочесть не может(так бывает когда после редакции плохо "скипилируется" (запишется) на диск) - выдаёт ошибку:"Active Windiw Error 0x000000ff" - адрес бывает разный, жмёщь Ок - и Explorer перезапускается.
В мусорку такие программы, которые с нулл-пойнтерами разобраться не в состоянии, что еще сказать можно. Под NT4 и W2k экплорер падал постоянно, под XP работает неделями...
B_N вне форума Ответить с цитированием
Старый 16.03.2008, 16:09   #7
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Цитата:
HKEY_CURRENT_USER\Software\Microsof t\Windows\Curre ntVersion\Explorer\TrayNotify со значениями "IconsStream" и "PastIconsStream"
Верно, этот ключ отвечает за скрытие значков.

Цитата:
Какую программу и какое приложение? Shell_NotifyIcon - это не сообщение, это функция,
А я и не говорил, что это сообщение, дело в том что я не могу потом выгрузить нормально прги их приходится убивать и запускать, но это же не дело.

Цитата:
Под NT4 и W2k экплорер падал постоянно, под XP работает неделями...
Не спорю, но ошибки бывают.
P.S. я бы с радостью Movi Maker выкинул, только это систамная утилита.
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 16.03.2008, 16:19   #8
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
я бы с радостью Movi Maker выкинул, только это систамная утилита
Просто при установке винды не нужно устанавливать весь хлам (совершенно верно подмечено), который устанавливается по умолчанию...
Кроме того, существует масса утилит, позволяющих очистить винду от этого хлама и после установки. Так что проблемы, как таковой, "на горизонте не наблюдается"...
mihali4 вне форума Ответить с цитированием
Старый 16.03.2008, 16:21   #9
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
Просто при установке винды не нужно устанавливать весь хлам (совершенно верно подмечено), который устанавливается по умолчанию...
Кроме того, существует масса утилит, позволяющих очистить винду от этого хлама и после установки. Так что проблемы, как таковой, "на горизонте не наблюдается"...
Эх-х, проблема остаётся, я не могу вернуть иконки.
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 16.03.2008, 16:23   #10
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Air! Я же Вам написал:
Если Вы о своей программе, так вызывайте просто её (Shell_NotifyIcon) время от времени.
B_N вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Меняем Explorer Veiron Свободное общение 4 19.05.2008 12:51
Data Explorer gotex БД в Delphi 12 05.05.2008 22:04
explorer! Altera Операционные системы общие вопросы 6 18.02.2008 23:16
Internet Explorer 7.0 Аlex Win Api 12 09.09.2007 09:45