браузера
)
и задействовать механизмыопределения сетевой топологии
.
То есть
,
если в сети есть
Proxy,
необходимо уметь работать через не
-
го
.
Кроме того
,
доступ клиентского приложения к различным сетевым
адресам может быть ограничен межсетевым экраном
.
Поэтому предлагается более простой и эффективный способ
,
осно
-
ванный на использовании технологии
Microsoft Windows Host Script.
Программный комплекс реализован на языке программирования
VBScript.
Решение задачи и результаты работы программы
.
Рассмотрим
программу
,
которая контролирует клиентское приложение без модифи
-
кации кода
.
Программа использует
COM
для запуска и контроля кли
-
ентского приложения
(Internet Explorer).
Это позволяет получить прак
-
тически полный доступ к ресурсам приложения и использовать его для
работыс нашим сервером
,
используя контекст безопасности текущего
пользователя
,
а так же сетевые настройки
(Proxy-
сервер и т
.
д
.).
В на
-
шем приложении не нужно реализовывать клиента
HTTP,
это сделал за
нас
Microsoft.
Для обхода разграничения доступа к серверам необходи
-
мо воспользоваться почтовым сервером
— mail.ru.
В указанном примере программа работает следующим образом
:
—
создается
COM-
объект
Internet Explorer
и направляется на
mail.ru;
—
указывается имя пользователя и пароль
,
что обеспечивает доступ к
почтовому ящику на сервере
;
—
отсылается уведомляющее сообщение
“ready”
указанному адресату
;
—
каждые
20
с программой проверяется папка
“
Входящие
”
на наличие
сообщений с темой
XXX.request (XXX —
целое число
);
—
если подобное сообщение пришло
,
программа читает его
,
удаляет и
передает содержимое сообщения командному интерпретатору
WHS;
—
результаты обработки пересылаются в указанный почтовый ящик
.
Удалите строку
IE.Visible = true
для запуска
Internet Explorer
в скры
-
том режиме
.
Текст программына
VBScript
с использованием технологии
WHS
приведен в листинге
1.
Листинг
1
set IE = WScript.CreateObject("InternetExplorer.Application")
set WSSh = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshSysEnv = WSSh.Environment("PROCESS")
strTmp = WshSysEnv("TMP")
rn = chr(10)+chr(13)
44 ISSN 0236-3933.
Вестник МГТУ им
.
Н
.
Э
.
Баумана
.
Сер
. “
Приборостроение
”. 2005.
№
3