Tomsk Sysadmins Forum
Windows => Программирование => Topic started by: Shtafun on March 06, 2007, 23:39:43
-
Вообще проблема заключается в следующем:
Нужно сделать так чтобы пользователь не мог выключить процесс моей проги, помогите если кто может.
Можно также сделать след образом - запретить включать Task Manager - но этого я не умею делать - подскажите плиз. Возможно у кого-нибудь будут другие предложения ) Буду рад послушать. (Если нужно: пишу на Visual Studio 2005)
-
Как программным способом решить проблему - не знаю.
Может сгодится административный способ:
Если пользователь не является администратором, можно запускать ваш процесс под другим пользователем.
Но это, наверное, подойдет только для фоновых служб, запускаемых по расписанию или по какому-либо событию.
Иначе - для запуска потребуется ввести пароль.
Поправьте, если ошибаюсь.
-
...запретить включать Task Manager - но этого я не умею делать - подскажите плиз...
Запрещение запуска программ
Windows позволяет ограничить доступ к программам, кроме разрешенных в специальном списке.
Для ограничения запускаемых программ надо открыть раздел HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\ CurrentVerson\Policies\Explorer и создать там ключ RestrictRun типа DWORD со значением 0х00000001. Затем тут же надо создать подраздел с аналогичным именем RestrictRun и в нем перечислить список РАЗРЕШЕННЫХ к запуску программ для текущего пользователя. Записи в этом подразделе пронумеровываются, начиная с 1, и содержат строки с путями (необязательно) и именами приложений. Файлы должны быть с расширением. Например, Word.exe, Excel.exe ...
Не забудьте указать файл Regedit.exe, иначе Вы сами не сможете больше запустить редактор реестра! Для сброса ограничения на запуск программ надо установить значение ключа RestrictRun в 0
© 2002 А.Климов, И. Чеботарев
http://www.webhowto.ru/reg (http://www.webhowto.ru/reg)
http://winchanger.narod.ru (http://winchanger.narod.ru)
-
РАЗРЕШЕННЫХ к запуску программ
Все это конечно хорошо, но моя прога должна наоборот запрещать некоторым программам запускаться, а не разрешать некоторым как получается в даном примере.
Конечно можно это использовать но только в крайнем случае, т.к придется тогда програмно проверять какие на компе запускать программы все-таки нужно, а их обычно намного больше ).
-
Все это конечно хорошо, но моя прога должна наоборот запрещать некоторым программам запускаться, а не разрешать некоторым как получается в даном примере.
Конечно можно это использовать но только в крайнем случае, т.к придется тогда програмно проверять какие на компе запускать программы все-таки нужно, а их обычно намного больше ).
Имхо, скрывать - не лучший способ. Можно файл taskmgr.exe скопировать, переименовать и запустить. Т.е. можно организовать защиту по незнанию. Я это просто написал в качестве идеи, сам такой способ не использую, т.к. считаю ненадежным. Лучше воспользуйтесь запуском под другой учетной записью.
Вы не написали какая операционная система(ы) у ваших пользователей. И какого рода процесс - служба, GUI приложение или что-то еще.
-
Спасибо, благодаря тебе, я решил проблему )