|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Запретить закрытие окна |
|
VBS/WSH/JS - Запретить закрытие окна
|
Пользователь Сообщения: 80 |
Профиль | Отправить PM | Цитировать Добрый День!
Цель - обязать пользователя сделать выбор на перезагрузку ПК и не дать ему возможности отказаться (любым способом)в данном исполнении у пользователя есть возможность закрыть окно из панели задач Можно как-то запретить закрывать окно из Панели задач или может будут другие предложения. Спасибо за ранее <html id="appHTML"> <head> <meta charset="windows-1251"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <meta http-equiv="Content-Language" content="ru"> <title>Выбор времени ожидания</title> <hta:Application Icon = "MyIco.ico" Id="oHTA" ApplicationName="Выбор времени перезагрузки" Border="normal" BorderStyle="normal" Caption="yes" ContextMenu="no" InnerBorder="yes" MaximizeButton="no" MinimizeButton="no" Navigable="no" Scroll="auto" ScrollFlat="no" Selection="no" ShowInTaskbar="yes" SingleInstance="yes" SysMenu="no" Version="0.2" WindowState="normal" /> <style> body {background: #DDD;} select{width:100px;} .setbutton {margin-top: 2px;width:3px;} .edit {border:1px solid #9E9E9E;} .disabled{border:1px solid #9E9E9E;background: #EEE;} </style> <script language="VBScript"> Option Explicit Sub SetOk_click() Dim VMBuildStep VMBuildStep = document.getElementById("Wait").value Select Case VMBuildStep Case "30" createobject("WScript.Shell").run "shutdown.exe /r /t 1800 /f" Case "60" createobject("WScript.Shell").run "shutdown.exe /r /t 3600 /f" Case "120" createobject("WScript.Shell").run "shutdown.exe /r /t 7200 /f" End Select Window.Close() End Sub Function Document_onKeyDown() ' Запретить нажимать Alt+F4 Dim alt alt = window.event.altKey Select Case window.event.keyCode Case 27,116 window.event.keyCode = 0 window.event.cancelBubble = true Document_onKeyDown = False Case 115 If alt Then window.event.keyCode = 0 window.event.cancelBubble = true Document_onKeyDown = False End If Case Else Document_onKeyDown = True End Select End Function Sub Window_Onload () Dim idTimer idTimer = window.setTimeout("reset", 10000, "VBScript") End Sub Sub reset () createobject("WScript.Shell").run "shutdown.exe /r /t 3600 /f" Window.Close() End Sub </script> </head> <body> <span id="lblChoice">Необходимо выбрать время перезагрузки: <select name="Wait" id="Wait" size="1"> <option value="30" selected>30 минут <option value="60">1 часа <option value="120">2 часа </select> </span> <input type="Button" name="OK" value="OK" onclick="SetOk_click"> </ span> </body> <SCRIPT type="text/vbscript" language="vbscript"> ' Do the window sizing early so user doens't see the window move and resize Window.resizeTo 500, 200 </SCRIPT> </html> |
|
Отправлено: 10:52, 17-07-2019 |
Забанен Сообщения: 793
|
Цитата lox-ness:
1) растянуть форму на весь экран, присвоив ей атрибут "поверх всех окон" 2) отключить на время демонстрации формы выбора вариантов действий клавиатуру (блокировка Alt+Tab) 3) обработать результат клика мыши Первые два пункта реализуются посредством простенького шеллкода (тема выходит за рамки тематики форума), последнее стандартно и не требует специфических телодвижений. |
|
Отправлено: 12:40, 17-07-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать Цитата lox-ness:
Вот первым шагом и назначайте перезагрузку. А пользователя просто проинформируйте и дайте возможность передвинуть время. |
|
Отправлено: 13:04, 17-07-2019 | #3 |
Пользователь Сообщения: 80
|
Профиль | Отправить PM | Цитировать Пользователь может закрыть окно не сделав выбор, а нам нужно чтоб деваться ему было не куда и жать кнопку.
Добавить вариант Цитата:
Цитата:
В скрипте заложено время для принятия решения, правда пока маленькое совсем, но это порешаем Цитата:
Вообщем спасибо Всем за советы. Будем пробовать |
|||
Отправлено: 14:21, 17-07-2019 | #4 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата lox-ness:
Цитата Busla:
|
|||
Отправлено: 17:22, 17-07-2019 | #5 |
Пользователь Сообщения: 80
|
Профиль | Отправить PM | Цитировать Цитата:
при этом нужно не позволить ему отказаться совсем от перезагрузки. |
|
Отправлено: 06:31, 18-07-2019 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Доступ - запретить закрытие программы гостю | Alexander_88 | Microsoft Windows 8 и 8.1 | 1 | 04-09-2015 20:18 | |
[решено] Firefox- закрытие окна | Baden1 | Хочу все знать | 5 | 26-01-2013 21:19 | |
CMD/BAT - [решено] Запуск приложения и закрытие окна СMD | pzh2393 | Скриптовые языки администрирования Windows | 6 | 13-01-2013 00:33 | |
[решено] Автоматическое закрытие окна | LilLoco | Хочу все знать | 3 | 07-02-2011 13:43 | |
Закрытие окна Internet Explorer | rhtu | Автоматическая установка приложений | 3 | 02-03-2006 04:21 |
|