Когда на полевом ноутбуке стало катастрофически не хватать места на системном SSD, я решил снести LibreOffice и поставить MS Office 2007, лицензия которого у меня таки имелась. После установки пропали все значки офисных документов. То есть все файлы .doc, .docx, .xls, .xlsx, .ppt, .pptx выглядят одинаково — стандартным значком неопознанного файла. При этом все эти файлы работают нормально: при их запуске открывается соответствующее приложение. Короче, чисто эстетический косяк, который я хотел исправить. Гугления проблему обнаружили, но все советы сводились к «возьмите жопу молодого павлина» и «замените ышочпразщым на вжоауылфо». Особо хитрые, разумеется, предлагали скачать «волшебный исправлятор»: от сомнительных exe-шников до не менее подозрительных reg-файлов. Я же нашёл более простое и безопасное решение проблемы с иконками.
Загвоздка в том, что кое-кто ссылается куда-то не туда. В нашем случае система не может найти иконку для определённых типов файлов: doc, xls, ppt и их более современных Х-собратов.
Запускаем regedit и направляемся в ветку HKEY_CLASSES_ROOT. Там находим нужное нам расширение (.doc) и проверяем его значение.
У меня это значение было «Word.Document.8» — туда мы и отправимся: HKEY_CLASSES_ROOT\Word.Document.8.
Тут нас интересует параметр DefaultIcon (стандартный значок). Этот параметр ссылается куда-то в дебри системы к файлу wordicon.exe. Воспользовавшись поиском, вы обнаружите, что такого файла у вас нет (или ссылка будет вести в неправильном направлении). В любом случае, у нас вместо файла с иконками есть файл winword.exe (стопудово есть, ибо это и есть «сам ворд»)— используйте поиск, чтобы узнать где он лежит. Стандартный путь для 2007го офиса: C:\Program Files\Microsoft Office\Office12\ (там же есть excel.exe для xls-файлов и powerpnt.exe для ppt-файлов)
Теперь меняем значение параметра со «ссылки хрен-знает-куда» на ссылку к файлу winword.exe (цифра «1» после запятой необязательна — она просто указывает порядковый номер значка, который нужно выцепить из файла, если их много).
Теперь нужно перезагрузить систему (для опытных и ленивых: достаточно перезапустить процесс explorer.exe) и всё готово!
Таким же образом действуем с остальными расширениями. Открываем в HKEY_CLASSES_ROOT\ ветку с нужным расширением, смотрим его значение по умолчанию, направляемся туда и меняем значение DefaultIcon на путь к файлу соответствующей программы.
Вот и всё, ребята!
PS — Ах, да! Напоминаю, что ковыряние в реестре грязными кривыми руками может привести к нестабильной работе системы.