среда, 30 марта 2016 г.

Пропали иконки (значки) приложений.

         Суть проблемы — иконки многих приложений отображаются в виде пустых белых прямоугольников (как в случае, если у файла отсутствует расширение), однако файлы открываются нормально.
         Какие могут быть причины этой проблемы и как это безобразие исправить? Попробуем разобраться.

Повреждён кэш иконок.

Можно попробовать его пересоздать. Есть несколько способов:
1) Через командную строку:
        a) Запустить командную строку от имени Администратора;
        b) Последовательно выполнить следующие команды:
                taskkill /F /IM explorer.exe
                cd /d %localappdata% (для ХР - «%userprofile%\Application Data\Local Settings\Application Data»)
                attrib -h IconCache.db
                del IconCache.db
                explorer.exe
                pause 0 

2) Через командную строку - 2: 
                ie4uinit.exe -ClearIconCache
                taskkill /F /IM explorer.exe
                DEL «%localappdata%\IconCache.db» /A
                shutdown /r /f /t 00 

3) Использовать стороннее ПО: 
       a) Практически любой твикер Windows. Например, TweakUIRepair → Rebuild Icons → Repair Now
       b) Узкоспециализированные утилиты. Например, Icon Cache Cleaner

4) Переназначить программу по умолчанию: 
       a) Пуск → Панель управления → Программы → Программы по умолчанию. Выбрать любую программу и [пере]назначить её по умолчанию. Кэш перестроится автоматически. 
       b) Нажать ПКМ на файле → Открыть с помощью → Выбрать нужную программу (галочка «Использовать выбранную программу для всех файлов данного типа» должна стоять). 

Удалена папка %SystemRoot%\Installer.

         В стремлении освободить место на системном диске, некоторые умудряются удалить эту, на первый взгляд, ненужную папку. Но делать этого ни в коем случае нельзя, так как эта папка содержит кэш установщика Windows и хранит важные файлы для установленных по технологии Windows Installer приложений и не должна удаляться или очищаться. Если удалить эти файлы, то впоследствии появятся проблемы с установкой, удалением или обновлением ПО, установленных по технологии Windows Installer или, как в этом случае, с отображением иконок. В крайнем случае можно воспользоваться утилитой Windows installer unused files cleanup tool или более удобной и современной программой PatchCleaner

         Если папка Installer всё же была удалена, и значки приложений отображаются неверно, то можно воспользоваться следующими способами: 

1) Скачать и установить заново повреждённое приложение. 

2) Указать другой источник для значков, чаще всего это папка с установленной программой (на примере MS Word): 
       a) В проводнике Windows выбрать Сервис → Свойства папки → Типы файлов. Найти расширение файла, у которого исчезла иконка. Например, *.doc. 
       b) Внизу справа нажать кнопку «Дополнительно»
       c) В открывшимся окне выбрать «Сменить значок»
       d) Появится сообщение, что файл не найден. Нажать «Ок». Появляется окно «Смена значка»
       e) Нажать кнопку «Обзор» и найти исполняемый файл необходимого приложения. Например, для файлов *.doc это буде MS Word. Для Office 2007 путь будет «C:\Program Files\Microsoft Office\Office10\WINWORD.EXE»
      f) Выбрать необходимую иконку → «Ок» → «Ок»

3) Скопировать папки, аналогичные удалённым, с другого ПК. Так как в папке Installer довольно много всевозможных подпапок, определить нужную можно так: 
     a) Запустить regedit
     b) Перейти в HKEY_CLASSES_ROOT → найти нужное расширение (например, *.doc) → посмотреть значение «По умолчанию». Для Office 2007 это «Word.Document.8»
     c)  Перейти к HKEY_CLASSES_ROOT\Word.Document.8. 
     d) Здесь нужно посмотреть, какое значение содержит параметр DefaultIcon. Если что-то вроде «C:\Windows\Installer\{90140000-0011-0000-0000-0000000FF1CE}\wordicon.exe,13», значит нужно на другом ПК найти такую же папку и скопировать оттуда файлы на проблемный компьютер. Если папка не существует, нужно создать её (прямо в фигурных скобках) и скопировать туда файлы, если есть и папка и файлы, но сами файлы без значков — заменить файлы на «рабочие» с другого ПК. 

4) Способ, совмещающий 2-й и 3-й пункты: нужно указать другой источник для значков, но путём редактирования реестра. Итак: 
     a) Запустить regedit
     b) Перейти в HKEY_CLASSES_ROOT → найти нужное расширение (например, *.doc) → посмотреть значение «По умолчанию». Для Office 2007 это «Word.Document.8»
     c) Перейти к HKEY_CLASSES_ROOT\Word.Document.8. 
     d) Здесь нужно посмотреть, какое значение содержит параметр DefaultIcon. Если что-то вроде «C:\Windows\Installer\{90140000-0011-0000-0000-0000000FF1CE}\wordicon.exe,13», то заменяем на «C:\Program Files\Microsoft Office\Office12\winword.exe,1» (цифра «1» после запятой необязательна — она просто указывает порядковый номер значка, который нужно извлечь из файла, если их много). 

Другое

1) Иногда проблема с пропажей значков возникает у приложений MS Office после установки обновлений. Нужно откатить систему на более ранее состояние и дождаться исправленных обновлений. 

2) Многие программы поддерживают восстановление установки в случае повреждения. Для этого нужно нажать кнопку «Пуск» и выбрать «Панель управления» (в Windows 8/8.1/10 для этого нужно щёлкнуть правой кнопкой мыши на кнопке «Пуск»). В категории «Программы» нужно выбрать пункт «Программы и компоненты». Далее выбрать нужную программу и нажать кнопку «Изменить». На завершающем шаге, в зависимости от программы, нужно будет выбрать «Восстановить», «Быстрое восстановление», «Исправить» и т.д

v1.1