Как вернуть функцию тем в Windows XP?

3345
MM.

Когда я пытаюсь установить визуальный стиль в Windows XP (например, стандартный Luna), я получаю один из следующих двух:

  • Ошибка «Отказано в доступе».
  • Это работает, но когда я перезагружаю компьютер, я снова получаю классический вид без ошибок.

Кроме того, в окне «Внешний вид» раскрывающийся список «Окна и значки» отображается серым цветом. Вот список вещей, которые я пробовал, но безрезультатно:

  • Удостоверьтесь, что «Использовать визуальные стили в окнах» проверено в Системных свойствах> Дополнительно> Производительность
  • Перезапуск сервиса «Темы». Начинается чисто, ошибок нет.
  • Применяя эти два исправления: Kelly's Corner и tweaks.com .
  • Запуск sfc /scannowи проверка целостности от uxtheme.dllчистой установки XP
  • Восстановление всего \Windows\Resources\Themesкаталога.
  • Создание нового пользователя. Новый пользователь , похоже, не страдает этой проблемой. Может быть, это решение, создать нового пользователя и перенести все данные, но это было бы больно, и я бы предпочел переустановить все это.

Я использую Windows XP Professional SP3 без шпионских программ, вирусов и других видимых сбоев.

Как я могу это исправить?

1
Работала ли когда-нибудь эта функция для вас? John T 14 лет назад 0
Если вы говорите о необходимости исправления uxtheme.dll для использования неофициальных визуальных стилей, это не моя проблема. Моя проблема в том, что я не могу использовать даже включенный! MM. 14 лет назад 0
да, я знаю, что вы спрашиваете ... но работали ли они когда-либо на вас? или они вдруг перестали работать? John T 14 лет назад 0
Извини, Джон, я неправильно понял твой комментарий. Я не видел "для тебя". Да, эта функция работала раньше, и однажды я перестал работать, и я решил использовать классический вид. Тогда я хотел вернуться к визуальному стилю, но не смог. MM. 14 лет назад 0
Может быть, групповая политика пошла не так? Breakthrough 14 лет назад 1
Я не знаю точно, где искать. Если вы увидите 2 URL-адреса, которые я разместил, вы увидите, что они пытаются отключить некоторые политики (NoVisualStyleChoice и т. Д.), Но я не заметил никаких изменений после этого, даже после перезагрузки. Может быть, кто-то может предложить другое место для поиска? MM. 14 лет назад 0
Есть ли ошибки в журнале событий? EvilChookie 14 лет назад 0
Что произойдет, если вы сделаете это? Phoshi 14 лет назад 0
@Martin, проверьте Event Viewer на наличие ошибок. Synetech 12 лет назад 0

6 ответов на вопрос

1
sinni800

Поскольку вы получаете сообщение об ошибке «Отказано в доступе», вы можете попробовать использовать монитор процесса, чтобы определить, ЧТО отказало в доступе.

Откройте программу, перейдите в Filter -> Фильтр ... И создать новый фильтр с: Результат является Access Denied затем включают .

Сделайте то, что вам нужно, и посмотрите, что он «запрещает доступ». Может быть, вы можете решить это оттуда!

0
Kez

Звучит так, будто поврежден сам профиль, а не Windows. Я бы предложил запустить установку восстановления, но сомневаюсь, что это коснется папки профиля или части реестра HKCU.

Воссоздание профиля пользователя, безусловно, будет следующей вещью, которую я попробую. Или, делая ремонтную установку, просто исключить это, если у вас есть свободные 30-40 минут.

Другой вариант, который действительно зависит от того, как долго у вас возникла эта проблема, - это восстановить систему до того момента, когда она будет работать нормально. Поскольку это откатывает системные файлы и реестр, это может помочь. Пока вы делаете снимок восстановления системы перед тем, как сделать это (просто чтобы быть в безопасности - хотя я думаю, что он делает это автоматически заранее), вы всегда можете сделать «вперед»? к текущему моменту времени снова.

0
harrymc

Возможно, файл uxtheme.dll был изменен.
Некоторые менеджеры тем модифицируют его и никогда не отменяют свои изменения (например, StyleXP).
Итак, для решения вы должны:

  1. Получить хороший uxtheme.dll с другого компьютера
  2. Загрузка в безопасном режиме
  3. Заменить эту DLL в C:\WINDOWS\system32\uxtheme.dll
  4. Замените эту dll, но только если она уже есть в C:\Windows\system32\dllcacheкаталоге
  5. Перезагрузись нормально.

Папка dllcache помечена как системная и скрытая, поэтому, если вы хотите просмотреть папку dllcache через интерфейс проводника, откройте «Мой компьютер», откройте «Инструменты»> «Параметры папки», перейдите на вкладку «Вид», затем выберите Show hidden files and foldersпараметр и снимите флажок Hide protected operating system files. Или, в качестве альтернативы, если вы не хотите изменять эти параметры, используйте вместо этого команду «Выполнить», введите% systemroot% \ system32 \ dllcache и нажмите ОК.

"Вещи, которые я пытался безрезультатно: (...) Запуск sfc / scannow и проверка целостности uxtheme.dll против чистой установки XP" MM. 14 лет назад 0
Смотрите мой новый ответ. harrymc 14 лет назад 0
Вы можете удалить этот ответ, чтобы не загромождать страницу. Sasha Chedygov 13 лет назад 0
@musicfreak: Этот ответ дополняет мой другой ответ на этот вопрос. В любом случае, поскольку ОП не указал, как или если он решил проблему, все ответы можно считать бесполезными. harrymc 13 лет назад 0
Справедливо. Лично я удаляю ответы, когда они оказываются неправильными или неуместными, но это только я. Sasha Chedygov 13 лет назад 0
@musicfreak: Вы не должны удалять - они могут оказаться уместными для кого-то, кто ищет похожую, но не такую ​​же проблему. harrymc 13 лет назад 0
-1
EvilChookie

Это может показаться глупым, но давайте позаботимся о том, чтобы папка «Темы» на самом деле не была закрыта ни для вас, ни для кого-либо еще (возможно, служба Windows, которая должна прочитать файлы, не может по какой-либо причине).

  1. Перейдите в \ Windows \ Resources \ Themes
  2. Правый клик, Свойства
  3. Нажмите вкладку безопасности
  4. Нажмите Дополнительно
  5. Снимите флажок "Наследовать от родителя ..."
  6. Нажмите «Удалить»
  7. Нажмите «Добавить»
  8. Типа "Все". Нажмите "ОК"
  9. Галочка «Полный контроль» в «Разрешить колонку»
  10. Нажмите "ОК"
  11. Галочка "Заменить записи разрешений на ребенка ..."
  12. Нажмите «Применить»
  13. Если будет предложено перезаписать все разрешения, нажмите «Да»
  14. ОК, выход из подсказок.
  15. Перезапустите сервис тем.
Давать всем полный контроль - плохая идея. kinokijuf 11 лет назад 0
-1
harrymc

Другая попытка (но очень дикая идея) основана на том факте, что uxtheme.dll позволяет использовать только неподписанные скины.

Идея в том, что, возможно, Windows по какой-то неизвестной причине теперь считает все ваши темы неподписанными. Решением будет установка StyleXP, которая исправляет файл uxtheme.dll, чтобы позволить вам использовать неподписанные скины.

Просто отметьте, что когда вы удаляете StyleXP, он не отменяет исправления, поэтому вам нужно будет следовать указаниям в моем другом ответе, чтобы восстановить его.

-1
sinni800

Вы можете попробовать переименовать NTUSER.DAT в папке вашего профиля. Этот файл содержит куст HKEY_CURRENT_USER в реестре.

Если проблема решена посредством этого, ответ может быть найден в упомянутом кусте HKEY_CURRENT_USER. Обязательно перезаписать файл обратно.

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

Переименовав NTUSER.DAT, вы не сможете войти. kinokijuf 11 лет назад 0

Похожие вопросы