Самозакрывающееся HTA приложение

Пример самозакрывающегося 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>

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *