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

Вниз

Обновление иконок   Найти похожие ветки 

 
Unnamed   (2001-08-26 03:43) [0]

Господа программисты !
Столкнулся со следующей проблемой: я изменяю в реестре вид стандартных иконок (например для изменения стрелочки значка я пишу в раздел "HKLM\Software\Microsoft\Windows\CurrentVersion\explorer\Shell Icons" параметр с именем "29" и значением пути к новой иконке. Так вот собственно вопрос: как сделать так, чтобы эти изменения вступили в силу БЕЗ ПЕРЕЗАГРУЗКИ. Сразу оговорюсь нажатие F5 на десктопе иконки НЕ обнавляет. Также просьба не предлагать варианты из FAQ - они не срабатывают, я проверял.

p.s. Как-то это все же можно сделать, т.к. у меня есть утилитка TweakUI, писанная Microsoft"ом которая это с успехом делает.


 
Unnamed   (2001-08-26 23:46) [1]

Что, идей нет ?


 
Unnamed   (2001-08-28 00:57) [2]

Помогите, пожалуйста !!!!!


 
Доброжелатель   (2001-08-28 10:22) [3]

Спасение утопающих - дело рук самих утопающих.


 
Виктор Щербаков   (2001-08-28 10:24) [4]

Попробуй WM_SETTINGCHANGE


 
Almaz ©   (2001-08-29 00:47) [5]

>Доброжелатель
Да,... Вы свое имя оправдали полностью :)
>Виктор Щербаков
Не сработает. Я сталкивался с такой же проблемой.
>Unnamed
Во-первых, из каталога WINDOWS надо удалить файл ShellIconCache. Если этого не сделать, то даже перезагрузка не всегда поможет :)
Во-вторых придеться перегрузить Explorer. Т.е. сделать ему TerminateProcess, а затем запустить по новой. Это произойдет почти :) незаметно.

Удачи.
p.s. А насчет TweakUI - это отдельный вопрос и я к нему присоединяюсь. КАК ОНО ЭТО ДЕЛАЕТ БЕЗ ПЕРЕЗАГРУЗКИ EXPLORER ????


 
Григорий Ситнин ©   (2001-08-29 10:11) [6]

К сожалению, не помню как конкретно, но точно помню, что надо послать сообщение, которое по-русски звучит, как "ОбновиКэшИконок"...


 
Wizard_Ex ©   (2001-08-30 14:11) [7]

А по-моему нужно изменить битность с 16 на 24 или наоборот, только тогда обновится(без перезагрузки), к сожалению не знаю как это делать


 
Wizard_Ex ©   (2001-08-30 14:13) [8]

Имею ввиду какчество отображения иконок . есть такая штука


 
Unnamed   (2001-08-31 02:02) [9]

>Almaz
Работает, но Explorer перезагружать мне не подходит.

>Григорий Ситнин
А можно по подробнее, пожалуйста.

>Wizard_Ex
А как это сделать подскажите.



 
Григорий Ситнин ©   (2001-09-23 09:23) [10]

Неназванный: к сожалению, попродробней нельзя, так как книга, в которой была эта информация была подарена. попробуйте поискать на http://msdn.microsoft.com/library/


 
Polevi ©   (2001-09-23 12:32) [11]

2Unnamed
Я прошу прощения - нет времени смотреть - есть этот способ в FAQ или нет
Попробуй

(Информация взята не помню откуда)

Можно использовать из приложения Дельфи с помощью следующей конструкции:
ShellExecute(Application.Handle,
Pchar("Open"),Pchar("C:\Windows\Rundll32.exe"),
Pchar(команда),
Pchar("C:\Windows"),SW_SHOWNORMAL);
где: команда - одна из перечисленных ниже

Например, выход из Windows без любых сообщений/вопросов:

ShellExecute(Application.Handle, Pchar("Open"),Pchar("C:\Windows\Rundll32.exe"), Pchar("krnl386.exe,exitkernel"), Pchar("C:\Windows"),SW_SHOWNORMAL);

"rundll32 user,repaintscreen" - Обновить рабочий стол


 
Andrey Klimov   (2001-09-24 22:36) [12]

Windows 2000/

SendMessage(FindWindow("Progman", "Program Manager"), WM_COMMAND, $A065, 0);

У меня работает, а у Вас?



 
Unnamed   (2001-09-28 01:48) [13]

Win 98/

НЕ РАБОТАЕТ !!!
А надо бы...



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

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

Наверх




Память: 0.49 MB
Время: 0.023 c
1-21999
elephant
2001-12-15 02:02
2002.01.08
C++ or Delphi


14-22376
Новенький
2001-11-07 01:11
2002.01.08
помогите кто-чем сможет


1-22109
avr555
2001-12-19 17:17
2002.01.08
ComboBox в Grid


14-22411
MadBurro
2001-11-12 20:52
2002.01.08
WinXP cd-key


3-21992
dlK
2001-12-06 15:21
2002.01.08
Как не дать программулине