120

Иногда это диалоговое окно появляется (см. Скриншот ниже). Каждый раз, когда он появляется, я выбираю «Сохранить текущую цветовую схему и больше не показывать это сообщение». Затем Windows снова напоминает мне - или на следующий день или после перезагрузки, или иногда еще 5 минут спустя.

Вы хотите изменить цветовую схему, чтобы улучшить производительность?

Вы хотите изменить цветовую схему, чтобы улучшить производительность?

Windows обнаружила, что производительность вашего компьютера низкая. Это может быть связано с тем, что для запуска цветовой схемы Windows Aero недостаточно ресурсов. Чтобы повысить производительность, попробуйте изменить цветовую схему на Windows 7 Basic. Любые внесенные вами изменения будут действовать до следующего входа в Windows.

  • Измените цветовую схему на Windows 7 Basic
  • Сохраните текущую цветовую схему, но спросите меня снова, если мой компьютер продолжает работать медленно
  • Сохранить текущую цветовую схему и больше не показывать это сообщение

Есть ли какая-то причина, почему Windows игнорирует / забывает мои попытки подавить диалог? Я хотел бы никогда больше не видеть это, это раздражает, и это выводит меня из полноэкранных приложений.

Если это имеет значение, я использую Windows 7 x64 Professional. Я считаю, что диалоговое окно появляется, потому что я использую Vsync и Triple Buffering для приложений DirectX.

5 ответов5

73

Предполагая, что вы понимаете, что это сообщение информирует вас о том, что в вашей системе недостаточно ресурсов, и просит вас отключить Aero, чтобы он продолжал работать с оптимальной скоростью,

  1. Перейдите в меню "Пуск" и введите « Центр поддержки» в поле поиска.
  2. Запустите его (это должна быть верхняя запись в группе "Панель управления")
  3. На левой боковой панели нажмите Change Action Center settings
  4. Снимите флажок Windows Troubleshooting разделе "Сообщения об обслуживании".
  5. Нажмите кнопку Ok , и все готово.

Вот скриншот экрана настроек:

В качестве альтернативы:

  • Вы можете попробовать сохранить этот параметр таким, какой он есть, и переключиться в режим базового рабочего стола, прежде чем запускать приложения, которые обычно запускают это уведомление Action Center. Или же,
  • Вы можете щелкнуть правой кнопкой мыши значки, которые вы используете для запуска этих полноэкранных приложений, щелкнув свойства и на вкладке «Совместимость» отметьте « Disable desktop composition . Это отключит службу диспетчера сессий Desktop Window Manager во время выполнения этого приложения, что увеличит системную и видеопамять и позволит избежать некоторых несовместимостей приложений. Вероятная причина для вашего сообщения в Центре поддержки, если у вас достаточно системной и видеопамяти, но вы все равно будете получать это сообщение в определенных играх или полноэкранных приложениях.
27

Я постоянно нахожусь в подобной ситуации, хотя я никогда не получаю то же самое сообщение и провёл небольшое тестирование.

Насколько я понимаю, основной ресурс, который находится под нагрузкой, это память GPU. Но это не обязательно означает, что у вас заканчивается этот ресурс в целом. Это может означать, что диспетчер окон рабочего стола обнаружил, что вы работаете настолько низко, что одну особенность этой службы можно отключить, чтобы освободить больше памяти.

Чтобы проверить это, я начал открывать приложения, интенсивно использующие память GPU:

Это несколько выше среднего использования в моей трехэкранной настройке с несколькими ключевыми игроками (Visual Studio 2012 (аппаратное ускорение включено), PhpStorm, Aptana Studio, Chrome, Firefox, IE, ...). Так что, да, если у вас есть только карта на 1 ГБ, и это будет ваш обычный сценарий использования, у вас уже будет проблема.

Мне пришлось продвинуться немного дальше и запустить еще пару экземпляров Visual Studio ...


... пока он не приблизился к отметке 1,5 ГБ и ...

ЩЕЛЧОК! Это заставило Windows полностью уничтожить компоновку рабочего стола (и освободить некоторые драгоценные ресурсы).

Теперь, когда я уже на критическом уровне и запускаю приложение, которое использует чрезмерное количество памяти GPU в полноэкранном режиме, я даже могу выйти за пределы этого критического предела. Вот результат после запуска Black Mesa некоторое время на 2560x1440 с максимальными деталями:

Таким образом, две вещи могут быть вычтены из этого. При превышении отметки 75% на рабочем столе Windows может принудительно отключить композицию рабочего стола, при достижении того же предела в полноэкранном приложении (и, возможно, при выходе из этого приложения) композиция рабочего стола не отключается.
Во-вторых, пока вы находитесь в своей игре, вы можете понять: «Эй, у меня достаточно ресурсов для запуска этой игры, почему у меня недостаточно ресурсов для рабочего стола?». Причина в том, что оба требуют памяти одновременно.

Windows может рассказать вам о ситуации с памятью только после выхода из игры. Итак, когда я запускаю другую Visual Studio после выхода из Black Mesa ...

Итак, что мы можем сделать по этому поводу?

Получите больше памяти GPU

Сладко и просто.

Отключить композицию рабочего стола (для процесса)

Как уже было предложено, вы можете отключить композицию рабочего стола для одного исполняемого файла. Это приводит к тому, что композиция рабочего стола временно отключается во время выполнения исполняемого файла. Это резко сократило общее потребление памяти при выполнении приложения в моих тестах:

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

Отключить композицию рабочего стола (глобально)

Я бы не стал считать это решением, так как настольные композиции обычно желательны. Но это где его отключить:

Я просто хочу избавиться от надоедливого сообщения!

Только потому, что вы удалите предупреждение « Ваша батарея почти разряжена!Вы можете говорить только еще 10 минут!«не означает, что вы можете говорить дольше 10 минут. На самом деле ваш телефон, скорее всего, просто отключится и все. Теперь, как это для улучшения?

Я никогда не предполагал, что сообщение можно отключить, и я не понимаю, как это можно считать преимуществом.

Вы можете подумать, что знаете лучше, но не знаете. Если система говорит вам, что у нее заканчиваются ресурсы, это так.

Но это не так! Я знаю!

Хорошо, давайте предположим, что Windows просто недостаточно умна, чтобы обнаружить особую ситуацию, в которой вы находитесь, а предупреждающее сообщение - просто досадное неудобство. Что теперь?

Дело в том, что меня лично это тоже касается, и это чертовски раздражает меня. Потому что я даже не получаю это предупреждение. Windows просто переключает мой цветовой профиль и все. И мне это нравится на самом деле.

Когда это происходит, я обычно быстро запускаю скрипт, который вызывает

net stop uxsms & net start uxsms

Вот полный сценарий. Он откроет приглашение UAC и перезапустит службу, чтобы ее можно было запустить из любого места. Я прикрепил его к меню «Пуск».

@if (1==1) @if(1==0) @ELSE
@echo off&SETLOCAL ENABLEEXTENSIONS
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"||(
    cscript //E:JScript //nologo "%~f0"
    @goto :EOF
)
NET STOP uxsms
NET START uxsms
@goto :EOF
@end @ELSE
ShA=new ActiveXObject("Shell.Application")
ShA.ShellExecute("cmd.exe","/c \""+WScript.ScriptFullName+"\"","","runas",5);
@end

Это перезапускает диспетчер окон рабочего стола и возвращает меня к моему составному рабочему столу (и это освобождает много ресурсов в процессе, да).

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

17

Я получаю это чертово сообщение, которое постоянно мучает меня (в течение долгого времени) на ПК с Windows 7, в основном при удаленном доступе к ним через VNC (любой вкус), но я хочу, чтобы Aero и композиция рабочего стола были включены (конечно, нет). используя драйвер зеркала VNC, иначе Aero точно не будет).

Переключение на основную тему, даже если она временно, может привести к поломке графического интерфейса для некоторых старых приложений (например, для тех, которые используют виртуализацию DPI, доступную только с композицией Aero + для настольных компьютеров), что было одной из причин, по которой я хотел сохранить композицию Aero и настольных систем. включен по умолчанию, но просто остановите чертово сообщение, более того, система фактически работала нормально, так как многие пользователи подтверждают комментарии на этой странице, тогда проблема была только в сообщении!

Снятие флажка "Устранение неполадок Windows" в разделе "Сообщения о техобслуживании" просто не является решением, так как многие также подтверждают комментарии здесь, это не работает, а отключение композиции на рабочем столе ... ну ... как сказать, чтобы выключить машину мотор, потому что он не работает должным образом ... т.е. не решение ...

После того, как я долго мучился с этим сообщением, я решил, что мне действительно нужно это прекратить, затем я отладил dwm.exe и, наконец, нашел способ окончательно убить сообщение ... если вы хотите сделать то же самое, и у вас Windows 7 SP1 x64 (это, вероятно, отличается для x86) просто исправьте ваш dwm.exe, как я сделал:

Предупреждение: Делайте это только если вы знаете, что делаете, иначе вы можете сломать вашу систему !!!

для Windows 7 SP1 x64:

(original file md5: f162d5f5e845b9dc352dd1bad8cef1bc)
open file on an hex editor and search for this pattern:
FF15D2A5000085C079
replace it by:
9090909090909090EB
(patched file md5: 2ab05d7454dcd8ef20a7f99b3390973d)

для Windows 7 SP1 x64 + KB3125574 Удобный накопительный пакет:

(original file md5: c206c9dbfc34afd367dd150d979a5185)
open file on an hex editor and search for this pattern:
FF1562B1000085C079
replace it by:
9090909090909090EB
(patched file md5: 8243c03dad2b9aaaddabe65e4869e2ae)

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

Обратите внимание, что для внесения изменений / переименования / замены файла dwm.exe необходимо остановить службу "Диспетчер сеансов диспетчера окон рабочего стола" (на services.msc), чтобы она перестала работать, а также принять право собственности на файл и настроить разрешения. .. поскольку файл по умолчанию принадлежит TrustedInstaller ...

Также обратите внимание, что в моем анализе dwm.exe я обнаружил, что на самом деле есть два из этих сообщений (похожих, но не одинаковых):

  • один показан на скриншоте верхнего вопроса, этот отображается, когда dwm.exe использует некоторые ресурсы процессора ... для запуска может быть достаточно 30% (и VNC делает это), мой патч удаляет это сообщение ,
  • есть другое подобное сообщение, но с немного другим текстом, которое появляется, когда dwm.exe использует слишком много памяти GPU, что это не то, которое показано на скриншоте вопроса, и мой патч не удалит это сообщение.
8

Вам не хватает памяти GPU. Это может быть:

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

Поскольку вы используете Windows 7 x64, третья возможность, вероятно, не применяется.

Для второй возможности вы можете обновить свой видеодрайвер до последней версии, как указано на сайте производителя.

Во-первых, если это всегда происходит при запуске одной и той же программы, то могут возникнуть проблемы с совместимостью с темой Aero. Чтобы отключить Aero во время работы этого приложения, измените в свойствах его исполняемого файла значение "Отключить композицию рабочего стола":

0

Есть ли какая-то причина, почему Windows игнорирует / забывает мои попытки подавить диалог?

Нет - окно не должно отображаться снова, если вы ответите, но это все равно происходит.

Я считаю, что диалоговое окно появляется, потому что я использую Vsync и Triple Buffering для приложений DirectX.

Нет, это не из-за этого. Прежде всего - Desktop Composition заставляет систему (но не игры, они используют DirectX) работать в режиме вертикальной синхронизации и дает вам возможность использовать хорошие функции, такие как Win+Tab (например), поэтому отключение ее, как говорят многие, не решение, это метод деградации вашей системы и действительно плохой обходной путь. Некоторые программы работают лучше с включенной Desktop Composition из-за этого vsync (как некоторые проигрыватели фильмов - он предотвращает разрыв), некоторые работают лучше с отключенной Desktop Composition (некоторые окна с точечными границами перемещаются очень медленно, когда включен DC, также программа gfx, такая как старый Corel может работать намного медленнее), но новые программы всегда работают хорошо, поэтому оставьте Desktop Composition включенным.

Сейчас я рекомендую подождать, пока MS не выпустит исправления для этого раздражающего поведения. Не отключайте Desktop Composition, если вам нравятся новые функции Win7 или Vsync.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .