Самозакрывающееся HTA приложение
- Recluse
- 02.03.2023
- 1 057
- 0
- 14.03.2023
- 3
- 3
- 0
- Содержание статьи
Пример самозакрывающегося HTA приложения
Безбраузерные приложения HTA не пользуются особой популярностью, но все же имеют место быть, и их работа продолжает поддерживаться даже в самых последних версиях Windows. Благодаря своей простоте, их можно сделать буквально на коленке в Блокноте, в результате чего, их можно использовать для самых различных сценариев - например, для создания простого приложения, которое будет выполнять роль заглушки, и закрываться через какое-то время.
Однако, не смотря на возможность использовать внутри HTA программы скрипты на языке VBScript, использовать метод Sleep не получится, поскольку в HTA нет возможности использования объекта WScript. Самое простое решение - запустить невидимое окно с Командной строкой, в которой будет выполнена команда timeout с указанием нужного времени, а после этого - поместить команду закрытия приложения. В итоге, рабочий пример вышеописанного сценария выглядит следующим образом:
<head>
<hta:application title="Самозакрывающееся приложение"/>
<title>Самозакрывающееся приложение</title>
</head>
<body>
<center>Это приложение закроется через 10 секунд.</center>
<script language="VBScript">
Set objShell = CreateObject("WScript.Shell")
objShell.Run "cmd /c timeout /t 10", 0, 1
window.close()
</script>
</body>
Важно! Команда timeout в Командной строке появилась только в Windows Vista, поэтому, для использования данного приложения в Windows XP, потребуется заменить команду timeout на команду ping, с соответствующими аргументами:
<head>
<hta:application title="Самозакрывающееся приложение"/>
<title>Самозакрывающееся приложение</title>
</head>
<body>
<center>Это приложение закроется через 10 секунд.</center>
<script language="VBScript">
Set objShell = CreateObject("WScript.Shell")
objShell.Run "cmd /c ping 127.0.0.1 -n 10 > nul", 0, 1
window.close()
</script>
</body>
Добавить комментарий