Я должен создать простое приложение Delphi, стиль киоска.
Это - очень простая вещь, единственная форма, где пользователь пишет некоторые персональные данные для регистрации к событию. 4 TEdit и TButton.
То, чего я хочу достигнуть, должно избежать, чтобы пользователь сделал любое действие, отличающееся затем ввод в TEdit или нажатие на TButton. Например, я не хочу, он делает ВКЛАДКУ ALT (переключающий приложения), нажимая клавишу окон на клавиатуре, делая ctrl-alt-canc, и т.д...
Я могу добавить, что passowrd защитил Кнопку, которая позволяет/запрещает этот "Режим Kiosk", таким образом поскольку я должен выйти из режима киоска, я просто нажимаю ту кнопку и выход.
Как достигнуть этого "режима киоска" в Delphi, не прерывая все нажатия клавиш вручную? Или кто-либо уже разработал это так, это может быть совместно использовано?
Думаю, вам лучше создать новый рабочий стол и запустить там свое приложение. Когда ваше приложение будет готово, вы можете вернуть рабочий стол пользователя. Так работает экран входа в Windows. Конечно, экран входа в Windows использует специальный безопасный рабочий стол. Ваше приложение на отдельном рабочем столе будет изолировано. У вас будет фон рабочего стола без меню «Пуск», панели задач или значков на рабочем столе, потому что explorer.exe не запускается автоматически. Конечно, можно запустить новый процесс с помощью диспетчера задач, но рабочие столы в Windows являются защищаемыми объектами; следовательно, вы можете наложить ограничения, если хотите. Конечно, если у вашего приложения достаточно разрешений.
Чтобы создать новый рабочий стол, вы можете использовать CreateDesktop Windows API, а для переключения на вновь созданный рабочий стол вы можете использовать функцию OpenDesktop.
Вы можете попробовать изменить оболочку Windows.
Когда вы запускаете windows, вы не запускаете оболочку по умолчанию (explorer.exe), вы можете запустить свое приложение.
В интернете вы можете найти альтернативные оболочки (более привлекательные), чем стандартная оболочка windows, например:
Этот вариант используется для целей, аналогичных разрабатываемому вами приложению. Киоски или TPV.
Для изменения приложения по умолчанию необходимо изменить ключ реестра:
В Win3.x и Win9x, файл SYSTEM.INI:
[boot]
shell=MiAplicacion.exe
В Win2k и WinXP, используйте реестр:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
Shell=MiAplicacion.exe
Если вы тестируете эту опцию, подумайте, в каком режиме вернуть конфигурацию к исходному значению (кнопка или опция). Для проверки изменений необходимо перезагрузиться.
ДОБАВЛЕНО: Кроме того, если вы поищете в Интернете что-то похожее на это "Delphi Change default windows shell", вы можете найти больше кода, примеров и информации об этом.
С уважением
P.D: Прошу прощения за ошибки в английском.
Хорошо, но если кто-то может открыть диспетчер задач, он может просто создать новую задачу и запустить оттуда explorer.exe, так что это не совсем безопасно ...
Хорошо, диспетчер задач можно остановить с помощью политик ... Ну, а для отключения cad-последовательности вы можете использовать saslibex, который создал Ремко Вейнен, вы можете найти его здесь: SASLibEx
kindest regrads,
с!