Как заблокировать Windows 7 в одну программу с C ++?

Я работал над приложением в Visual Studio 2015 (C ++). Это приложение для киосков для технической поддержки моей школы. По сути, это сайт поддержки, который будет работать в киоске. Мне нужно выяснить, как заблокировать окна, чтобы он запускал только эту программу. Также было бы полезно запустить программу в полноэкранном режиме. Имейте в виду, что все киоски работают под управлением Windows 7.

2

Решение

Установить ключ реестра

HKCU SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Shell="c:\path\to\whatever.exe"

Запретить диспетчер задач через безопасность taskmgr.exe (добавить запретить чтение + запретить выполнение в двоичном файле)

Установить автолог:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
DefaultUserName = whatever
DefaultPassword = whatever

Имейте под рукой загрузочный диск. Единственный способ изменить это — загрузить загрузочный диск и отменить один из шагов после установки соответствующего улья.

5

Другие решения

Вы можете создать свою программу с главным окном в полноэкранном режиме и всплывающем окне:

    hWnd = CreateWindowEx(WS_EX_CLIENTEDGE|WS_EX_APPWINDOW|WS_EX_TOPMOST,
lpClsName,
"MDI Project under Visual C++ WINAPI",
WS_BORDER|WS_POPUP,
...);// add the remaining parameters

и найдите taskmgr.exe, спрячьте его и нажмите кнопку меню «Пуск», а также спрячьте

hTaskBar = ::FindWindow  ("Shell_TrayWnd", "");
hStart   = ::FindWindowEx(GetDesktopWindow(), NULL, "Button", "Start");
ShowWindow(hTaskBar, SW_HIDE);
ShowWindow(hStart, SW_HIDE);

так что ваша программа выглядит как easycafe или handycafe

0

Я на самом деле перешел с C ++ на C #, поэтому я собираюсь объяснить свой ответ с C #.

Я использовал библиотеку перехвата клавиатуры для захвата ввода с клавиатуры и блокирования ввода не букв / цифр, чтобы alt-f4, alt-tab и т. Д. Не работали. Затем я определил закрывающую последовательность символов, используя другую клавиатуру (LWin + C + Home + F12 + PrtSc).

Что касается Ctrl-Alt-Del, то это нельзя отключить (насколько я знаю), потому что это системная функция, поэтому я просто оставил это как есть.

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

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

0
По вопросам рекламы [email protected]