Меню Рубрики

Hkcu software microsoft windows dwm

Вместо рабочего стола Windows загружается проводник!

В продолжение серии статей о вирусах и последствиях борьбы с ними, хочу рассказать что делать, если вместо рабочего стола Windows вы видите пустой экран или загружается проводник. Рассмотрим случай, когда после загрузки видим пустой рабочий стол, без меню «Пуск», значков и вообще всего нажитого непосильным трудом – одни обои, если они были.

Запускаем рабочий стол Windows вручную

Для начала пробуем запустить рабочий стол вручную. Жмем три волшебных кнопки Ctrl+Alt+Del для вызова диспетчера задач (подразумевается, что он не заблокирован. В противном случае читайте как разблокировать диспетчер задач вручную или с помощью утилиты AVZ .)

В Диспетчере задач идем Файл -> Новая задача (Выполнить. ) и там пишем explorer.exe или просто explorer . Как известно это не только проводник, но также является рабочим столом Windows.

Результатом данного действа может быть ваш любимый рабочий стол (что и требовалось), либо окно проводника (чего никак не ожидали увидеть).

Вместо рабочего стола загружается проводник

Теперь рассмотрим случай, когда при загрузке вместо рабочего стола загружается окно проводника Windows. Первым делом запускаем редактор реестра, так же как запускали проводник, только вместо explorer пишем regedit .

Переходим в ветку реестра:

Нас интересуют ключи Shell, UIHost и Userinit, в которых должны быть строго такие значения (подразумевается, что Windows установлена на диске С: ):

Переходим в следующую ветку реестра:

И если находим в данной ветке ключ Shell, безжалостно его уничтожаем.

Ищем и удаляем, если есть такие ветки:

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/CurrentVersion/Image File Execution Options/explorer.exe]

[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/CurrentVersion/Image File Execution Options/iexplorer.exe]

Так же не плохо проверить папку «Documents and Settings\ \Рабочий стол» и удалить там файлы desktop.ini и folder.htt

Выполнив эти действия, вы в 99% восстановите свой рабочий стол. Возможно это не полный перечень действий, и найдутсяе какие-то дополнительные варианты решения проблемы. Буду рад, если вы напишите об этом.

ЕСЛИ СЧИТАЕТЕ СТАТЬЮ ПОЛЕЗНОЙ,
НЕ ЛЕНИТЕСЬ СТАВИТЬ ЛАЙКИ И ДЕЛИТЬСЯ С ДРУЗЬЯМИ.

Источник

Приручаем процесс dwm.exe (Desktop Window Manager) в Windows 10

Desktop Window Manager (dwm.exe) в Windows это системный процесс, который управляет отображением окон приложений, отвечает за визуальные и 3D эффекты и темы Windows, строит миниатюры окон на панели задач, обеспечивает поддержку дисплеев и устройств с высоким разрешением и т.д. Данный процесс собирает графическую информацию со всех открытых приложений и строит окончательное изображение, которое видит пользователь.

Каждое приложение записывает изображение своего окна в определенное место в памяти. Desktop Window Manager объединяет их в окончательное изображение и отправляет всю графику через уровень интеграции мультимедиа. На этом этапе DWM может добавлять различные эффекты, например, прозрачность, анимацию окон и т.д.

Процесс dwm.exe всегда запущен в фоновом режиме и использует небольшое количество ресурсов компьютера. Откройте Task Manager и на вкладке Process в секции Windows Process найдите Desktop Window Manager (Диспетчер окон рабочего стола). Как правило процесс использует 0,5-2% CPU и до 50 Мб RAM (в зависимости от разрешения экрана, количестве и типе запущенных приложений).

Щелкните правой кнопкой по процессу Desktop Window Manager и выберите Go to details (подробно). Вы переключитесь на вкладку Details (Подробности), где перед вами появится список запущенных в системе процессов. Как вы видите данному процессу соответствует исполняемый файл C:\Windows\System32\dwm.exe.

Как вы видите, в моем случае в системе имеется два запущенных процесса dwm.exe. Это связано с тем, что к данному компьютеру с Windows 10 одновременно подключены два пользователя (локальный и удаленный по RDP). Соответственно для обработки графического представления рабочего стола для каждого пользователя система запустила отдельный процесс dwm.exe (DWM-1, DWM-2).

В Windows Vista и Windows 7 присутствовала специальная служба Desktop Window Manager, которую можно было остановить или отключить (при этом отключались все визуальные эффекты). В Windows 10 / Windows 8.1 этой службы нет, поэтому оставить процесс dwm.exe нельзя.

В некоторых случаях процесс dwm.exe может использовать довольно много ресурсов компьютера (CPU и RAM).

Если вы видите, что процесс Desktop Window Manager потребляет больше оперативной памяти или процессора, чем обычно: нужно, есть несколько вещей, которые вы можете попробовать:

  • Обновите драйвера видеокарты или встроенного графического адаптера. Desktop Window Manager перекладывает большую часть работы с процессора на ваш GPU, поэтому если видео драйвера работают некорректно, нагрузка на CPU может расти.
  • Проверьте компьютер на наличие вирусы. Некоторые вирусы могут маскироваться под процесс dwm.exe или вызывать проблемы с Desktop Window Manager.
  • Попробуйте отключить прозрачность (Параметры -> Персонализация-> Эффект прозрачности -> Выкл).
  • Также попробуйте отключить визуальные эффекты (Панель управления -> Система-> Дополнительные параметры системы -> Быстродействие -> Параметры-> Обеспечить наилучшее быстродействие).
  • Пробуйте по очереди удалять все сторонние приложения (в первую очередь приложения для обработки с графикой и видео) и попытайтесь найти приложение, которое вызывает аномально высокую нагрузку на DWM.

Источник

DWM под микроскопом

DWM, он же Desktop Window Manager — современная графическая подсистема, появившаяся ещё в ранних альфа-сборках Windows Vista под именем DCE (Desktop Compositing Engine). При помощи неё реализован новомодный графический интерфейс Aero в Windows Vista и Windows 7. Хотите узнать подробней, как работает DWM? Вам интересно, какие параметры реестра влияют его работу? Хотите узнать, как работать с ним программно? Тогда вперед, под кат. Если вам станет скучно — в конце статьи покажу котика.

В процессе создания приложения Personalization Panel я потратил немало времени на разбор того, как работает DWM. И вот что мне удалось выяснить.

В операционной системе Windows 7 движок Desktop Windows Manager инициализируется запуском одноименной службы. Грубо говоря, эту служба и есть движок. При запуске она читает ветку реестра
[code]HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM[/code]
Ищет и использует она там следующие параметры (все типа DWORD):
Composition
Управляет композицией окон. Фактически, включает или отключает работу движка.
1 — включено, 0 — выключено.

CompositionPolicy — в бета-версия Windows Vista ключ позволял принудительно включать Aero на неподдерживаемом оборудовании при значении 2. Есть подозрение, что сейчас значение ключа не обрабатывается.

ColorizationOpaqueBlend
Управляет прозрачностью окон. Позволяет отключать прозрачность без отключения композции.
0 — использовать прозрачность окон, 1 — сплошная заливка окон со страйпами (линии, идущие через окно).

ColorizationGlassReflectionIntensity — количество линий на окнах. Значение лежит в интервале [0..100], по умолчанию 50.

ColorizationColor — основной цвет активного окна. Представляет собой ARGB значение цвета:
Alpha [0..255], Красный [0..255], Зеленый [0..255], Синий [0..255].

ColorizationColorBalance — управляет насыщенностью цвета ColorizationColor. Значение лежит в интервале [0..100].

ColorizationAfterglow — основной цвет для неактивных окон. Если вы поместите заголовок окна над другим заголовком, в месте наложения этот цвет проявится особенно отчетливо. Операционные системы Windows 7/Vista не позволяют оперировать этой настройкой через интерфейс пользователя. Представляет собой ARGB значение цвета:
Alpha [0..255], Красный [0..255], Зеленый [0..255], Синий [0..255].

Отмечу, что и активные, и неактивные окна окрашиваются в смешанный ColorizationColor+ColorizationAfterglow цвет. Вес каждого цвета определяют ColorizationColorBalance для активного, и ColorizationAfterglowBalance для неактивного окна. При равном весе и разных цветах активное и неактивное окна разительно отличаются цветами. При ColorizationAfterglowBalance>ColorizationColorBalance в цвете активных окон начинает преобладать основной цвет неактивного окна и наоборот.

ColorizationAfterglowBalance — управляет насыщенностью цвета ColorizationAfterglow. Значение лежит в интервале [0..100].

ColorizationBlurBalance — управляет эффектом размытия цвета ColorizationColor+ColorizationAfterglow. Значение лежит в интервале [0..100]. Минимальные значения делают текущее активное окно менее прозрачным, максимальное — делает активное и неактивное окна прозрачными и цветом, одинаковым у обоих, смесью ColorizationColor+ColorizationAfterglow. При ColorizationColorBalance и ColorizationAfterglowBalance, равных нулю одновременно, а ColorizationBlurBalance равным 100, окна становятся «стеклянными», т.е. обесцвечиваются.

EnableAeroPeek — отключает пункт контекстного меню «Показывать рабочий стол при наведении» кнопки «Свернуть все окна» в панели задач справа, равно как отключает саму функцию. 1 — предпросмотр включен, 0 — выключен.

HideBlur — в отладочных версиях Windows 7 отключал эффект размытия цветов. Сейчас не используется.

После внесения изменения в эти параметры вручную через редактор реестра, дабы применить их, следует перезапустить службу Desktop Window Manager. Наблюдательный читатель знает, что Windows 7 применяет эти параметры без перезапуска службы. Как она это делает, мы сейчас узнает.

Программное управление DWM: меняем параметры прозрачности окон и их цвет на примере C#.

Для программного управления параметрами DWM/Aero можно воспользоваться двумя функциями из библиотеки dwmapi.dll. Они недокументированы, однако давно «раскопаны» народными умельцами утилитами вроде IDA.

1. DwmpGetColorizationParameters
Функция получает текущие параметры DWM. Применительно к C#, её объявление должно быть таким:
[code][DllImport(«dwmapi.dll», EntryPoint = «#131»)]
public static extern int DwmpGetColorizationParameters(out DwmColorParams dcpParams);[/code]
Её параметр — ссылка на структуру, в которой представлены параметры реестра. Вот так, например:
[code]public struct DwmColorParams
<
public UInt32 ColorizationColor;
public UInt32 ColorizationAfterglow;
public UInt32 ColorizationColorBalance;
public UInt32 ColorizationAfterglowBalance;
public UInt32 ColorizationBlurBalance;
public UInt32 ColorizationGlassReflectionIntensity;
public UInt32 ColorizationOpaqueBlend;
>;[/code]
Пример вызова:
[code]DwmColorParams Colors = new DwmColorParams();
DwmpGetColorizationParameters(out Colors);[/code]
Colors.ColorizationColor будет содержать текущий цвет окрашивания активных окон.
Перевести его к структуре Color можно таким образом:
[code]Color BackColor =Color.FromArgb((int)Colors.ColorizationColor);[/code]
Аналогично для других параметров.

2. DwmpSetColorizationParameters
Функция устанавливает параметры DWM «вживую», без перезапуска DWM.
[code][DllImport(«dwmapi.dll», EntryPoint = «#127»)]
public static extern int DwmpSetColorizationParameters(ref DwmColorParams dcpParams, bool someBool);[/code]
Первый параметр — ссылка на ту же самую структуру. Назначение второго параметра неизвестно, во всяком случае, мне. Подозреваю, он зарезервирован для внутренних целей или будущих разработок. Общепринято его задавать равным true.

Пример использования:
[code]DwmColorParams Colors = new DwmColorParams();
Colors.ColorizationAfterglowBalance = 20;
Colors.ColorizationColorBalance =50;
Colors.ColorizationBlurBalance = 30;
Colors.ColorizationGlassReflectionIntensity =50;
Colors.ColorizationOpaqueBlend = 0;
DwmpSetColorizationParameters(ref Colors,true);[/code]
Как несложно догадаться, чтобы при следующем запуске установленные параметры сохранились, их необходимо записать в реестр.

[code]RegistryKey RegKey = Registry.CurrentUser.OpenSubKey(«Software\\Microsoft\\Windows\\DWM\\», true);
if (RegKey == null)

RegKey.SetValue(«ColorizationColor», (int)Colors.ColorizationColor, RegistryValueKind.DWord);
RegKey.SetValue(«ColorizationAfterglow», (int)Colors.ColorizationAfterglow, RegistryValueKind.DWord);
RegKey.SetValue(«ColorizationColorBalance», (int)Colors.ColorizationColorBalance, RegistryValueKind.DWord);
RegKey.SetValue(«ColorizationAfterglowBalance», (int)Colors.ColorizationAfterglowBalance, RegistryValueKind.DWord);
RegKey.SetValue(«ColorizationBlurBalance», (int)Colors.ColorizationBlurBalance, RegistryValueKind.DWord);
RegKey.SetValue(«ColorizationOpaqueBlend», (int)Colors.ColorizationOpaqueBlend, RegistryValueKind.DWord);
RegKey.SetValue(«ColorizationGlassReflectionIntensity», (int)Colors.ColorizationGlassReflectionIntensity, RegistryValueKind.DWord);
RegKey.Close();[/code]
Персонализация Windows 7 меняет значения комплексно, например, ColorizationColorBalance+ColorizationBlurBalance+ColorizationAfterglowBalance всегда у неё дают в сумме 100, а ColorizationAfterglow и ColorizationGlassReflectionIntensity она вообще задавать не дает, что вобщем-то, не наглядно.

В качестве более наглядного примера я набросал простенькое приложение AeroTuner, которое позволяет поиграть с вышеуказанными параметрами. Выставьте значенния на как на рисунке и подвигайте ползунки:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Hitman тема для windows 7
  • Hitman go windows phone
  • Hitman blood money windows 10 fix
  • Hitachi touro pro windows 10
  • Hitachi microdrive x64 windows 10