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

Я попытался использовать SendMessage в winapi, но он только переводит монитор в спящий режим, что отключает любое движение мыши или нажатие клавиатуры. Я использовал это:

SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, 2);

Я обнаружил, что существует реестр, который обрабатывает обнаружение новых мониторов в окнах в HKLM> Программное обеспечение> Microsoft> TMM> UseIViewHelper. Предположительно, если вы измените его с 1 на 0, он прекратит обнаруживать новые мониторы, но, похоже, не будет работать (или, по крайней мере, для моего понимания).

Я пытался использовать MultiMonitorTool от Nir Soffer, но он, кажется, не отключает основной монитор, и, поскольку у меня есть только один монитор для ПК, это совсем не помогает.

Может кто-нибудь помочь мне с идеей, как это сделать, или, может быть, какой инструмент мне следует использовать?

Спасибо

1 ответ1

0

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

  1. Написал форму C # со свойством topmost = true, что ставит перед всеми возможными окнами, кроме диспетчера задач, меню «Пуск» и панели задач.
  2. Написал в C # функцию изменения реестра, которая включает диспетчер задач, и удалил большинство опций с экрана crtl + alt + del.
  3. Добавлена функция, которая активирует скрипт bat, который активирует скрипт AHK, чтобы отключить все возможности crtl + alt + delete (я знаю, что это отвратительно).
  4. Создана функция для удаления панели задач.
  5. Чтобы изменить параметры конфиденциальности вручную, перейдите: щелкните правой кнопкой мыши панель задач> параметры> меню запуска> снимите флажки с обоих параметров в разделе конфиденциальности.

Результат:

Черное наложение без стартового меню, без crtl+alt+del, без менеджера задач, без alt tab. Все, что вы делаете, обычно регистрируется как монитор отключен. Будьте осторожны при этом, так как вы можете застрять без выбора! Я создал другое приложение, которое отменяет все эти вещи, и добавил его в ярлыки запуска, чтобы, не видя ничего, я мог слепо нажать CRTL+ R и написать ярлык, который я создал, чтобы отключить все!

PM мне, если кто-то хотел бы полный исходный код.

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