"developer2006" <58718@users.rsdn.ru> wrote in message news:2469144@news.rsdn.ru... > А в Vista нажатие F5 не помогает, кто знает, как сменить иконку в висте? > З.Ы. Похоже что кеш иконок не обновляется
Здравствуйте, wellwell, Вы писали:
W>"developer2006" <58718@users.rsdn.ru> wrote in message news:2469144@news.rsdn.ru... >> А в Vista нажатие F5 не помогает, кто знает, как сменить иконку в висте? >> З.Ы. Похоже что кеш иконок не обновляется
W>А SHChangeNotify не поможет?
Пробовал, обновление проходит, но иконка не изменяется. Причем заметил, что когда изменяешь иконку стандартным методом "Свойства папки -> настройка -> сменить значок -> OK" ничего даже не мигает, как будто ОС изменяет кеш только для этой папки.
И еще одно наблюдение если создать новую папку, создать desktop.ini с нужными параметрами и аттрибутами файла + установить аттрибут папки "Только чтение", то ИКОНКА ИЗМЕНИТСЯ, но если изменить desktop.ini во второй раз, то иконка будет та, что была установленная впервые.
Re[3]: смена иконки в Vista
От:
Аноним
Дата:
02.05.07 08:24
Оценка:
Здравствуйте, developer2006, Вы писали:
D>Здравствуйте, wellwell, Вы писали:
Поже в висте действительно есть какой-то супер кеш для иконок. Поставил прогу свою, создал иконку на рабочем столе. Потом сделал новую версию проги с новой иконкой. А на рабочем столе все равно старая иконка, что бы я ни делал — и удалял все по десять раз... стоит только создать иконку для моей проги — так она старая и хоть ты тресни.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, developer2006, Вы писали:
D>>Здравствуйте, wellwell, Вы писали:
А>Поже в висте действительно есть какой-то супер кеш для иконок. Поставил прогу свою, создал иконку на рабочем столе. Потом сделал новую версию проги с новой иконкой. А на рабочем столе все равно старая иконка, что бы я ни делал — и удалял все по десять раз... стоит только создать иконку для моей проги — так она старая и хоть ты тресни.
Но ведь сама ОС способна менять менять иконку, как же это сделать программно?
Здравствуйте, Danchik, Вы писали:
D>Здравствуйте, developer2006, Вы писали:
D>[Skip]
D>>Но ведь сама ОС способна менять менять иконку, как же это сделать программно?
D>А как вы вызывали SHChangeNotify?
Вот так: SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);
Здравствуйте, Danchik, Вы писали:
D>Здравствуйте, developer2006, Вы писали:
D>[Skip]
D>>>А как вы вызывали SHChangeNotify?
D>>Вот так: SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);
D>А вы попробуйте SHCNE_UPDATEITEM
пробовал, не помогло и это, вот здесь есть примерчик неплохой, класно работает в ХП но в ВИСТЕ не помогает
Здравствуйте, Arioch, Вы писали:
D>>2) установить атрибут папки только для чтения
A>Насколько помню, атрибут не ReadOnly, а System
A>И вообще вопрос явно про Windows а не про Delphi
Теоритически да — системный аттрибут, но практически это Read only проверить можно банально сменив иконку средствами ОС.
а аттрибут System надо ставить в 98/95 винде