Winform - заставить пользователя заполнить форму при запуске - PullRequest
3 голосов
/ 12 октября 2011

Заранее спасибо за помощь.Я в первую очередь веб-разработчик, но мне было поручено создать простое приложение winforms.У меня есть приложение, за исключением одной части.Это приложение будет запущено при запуске и предложит пользователю указать причину, по которой он использует компьютер.Есть ли простой способ заставить пользователя заполнить эту форму, прежде чем продолжить.По сути, я хочу отключить все (меню Пуск и т. Д.), Пока эта форма не будет заполнена и закрыта.

Могу ли я убить explorer.exe и перезапустить?Это кажется агрессивным для меня.

Ответы [ 4 ]

1 голос
/ 12 октября 2011

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

После того, как пользователь закончит работу с вашим приложением, вы можете запустить explorer.exe или изменить настройки по умолчанию.

Вот небольшой урок, как это сделать.

Кстати: я не использую это ни на одном компьютере, но в профиле (Terminal Services) всех моих пользователей я изменяю это, чтобы запускать собственное приложение при входе в систему. Это обычное .Net winforms приложение, изначально не предназначенное для запуска в качестве оболочки.

1 голос
/ 12 октября 2011

Написание пользовательского GINA для добавления дополнительного текстового поля на экран входа может сделать это? Вероятно, не для слабонервных, хотя!

1 голос
/ 12 октября 2011

Это невозможно, поскольку опытный пользователь может просто нажать Alt + Ctrl + Del и убить приложение.Невозможно предотвратить или зафиксировать это событие, так как Windows спроектирована с точки зрения безопасности.

0 голосов
/ 12 октября 2011

Вы можете сделать хитрость, как это:

  • Установите FormBorderProperty формы в None, Opacity в 1% и WindowState в Maximized
  • В событии Load этой формы создайте новую форму со своими элементами управления и покажите ее в виде диалога.

Не уверен, работает ли он в Windows-7, но хорошо работает в XP. Это не правильное решение, хотя оно создает иллюзию. Пользователь все еще может пропустить это, нажав Ctl + Tab или Alt + Ctrl + Del и убить процесс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...