Главная страница Библиотека (скачать книги) Скачать софт Введение в программирование Стандарты для C++ Уроки по C# Уроки по Python HTML Веб-дизайн Ассемблер в среде Windows ActiveX Javascript Общее о Линукс Линукс - подробно Линукс - новое Delphi Паскаль для начинающих Турбопаскаль Новости Партнеры Наши предложения Архив новостей |
ActiveX Doc Migration Wizard. Если выбрать какой-нибудь стандартный ЕХЕ-проект, разработанный для выполнения на персональном компьютере и даже использующий таблицы СУБД, то его можно с помощью этого мастера легко превратить в Интернет-приложение. Мастер-волшебник задаст всего несколько вопросов, на которые легко ответить, и преобразует шаблон приложения так, что он из обычного приложения превратится в приложение ActiveX ЕХЕ, способное работать в Интернете. При этом мастер добавит объект userDocument в преобразованный проект подготовки приложения. С объектом UserDocument будут связаны два файла:
Кроме этих двух файлов в папке проекта при его преобразовании к виду ActiveX (.dll или .ехе — в зависимости от предназначения приложения — внешнее или внутреннее) будет создан еще один очень важный файл с расширением .vbd (Visual Basic Document). Как правило, он формируется с именем главной формы и служит в основном только затем, чтобы именно его указывать в качестве имени приложения, вызываемого на выполнение из браузера.
Рис. 1.24. Файл docforml.vbd в окне браузера Что при этом происходит? Браузер загружает ActiveX-приложение в свое пространство, выделяя ему заданный прямоугольник в окне, и предоставляет фактический карт-бланш, в том смысле, что приложение получает полный контроль над компьютером, так, как если бы оно выполнялось не в браузере, а в реальности было запущено на том компьютере, куда приложение было загружено. В этом, конечно же, таится очень большая опасность. Следует помнить, что браузер — это вовсе не графическая оболочка для исполнения команд и программ, что-то вроде графического Shell в Unix. Нет, в понимании Microsoft нынешний браузер является неотъемлемой частью операционной системы. Ведь в точности таким же способом, каким вы только что подготовили полнофункциональное приложение для исполнения его через браузер, вы можете загрузить через Интернет какое-нибудь другое приложение, которое, с точки зрения архитектуры и внутренней структуры, ничем не будет отличаться от вашего, но может скрывать в себе потенциальную угрозу для компьютера. Браузер имеет несколько уровней защиты и никогда не будет загружать по умолчанию неподписанный файл. Посмотрим, каким способом можно подготавливать ваши приложения для развертывания и эксплуатации их в сети Интернет/интранет. В Visual Basic для этих целей существует специальный мастер под названием Package and Deployment Wizard. Советую сразу выбрать в режиме Load on Startup всех необходимых мастеров (рис. 1.25).
Рис. 1.25. Окно для выбора необходимого мастера (Wizard)
В результате работы этого мастера создается инсталляционная процедура, которая копирует все необходимые для работы приложения библиотеки и драйвера (включая даже ODBC) и упаковывает все это в файл с расширением .cab, который можно загружать по сети из браузера. В момент загрузки, если на компьютере нет требуемых библиотек и драйверов, они создадутся и будут проведены все необходимые процедуры регистрации. Пользователю останется только одно — нажимать на кнопки и отвечать на вопросы — доверяет или нет он тому сайту, с которого производится загрузка приложения. На первый взгляд Microsoft продумала все идеально. Но это только на первый взгляд. На самом деле даже приложение FirstApp, которое мы за считанные минуты превратили в полноценное Интернет-приложение, требует весьма значительных ресурсов по времени загрузки, особенно в тех случаях, если оно грузится на компьютере, где даже не установлен Visual Basic и, следовательно, отсутствуют многие важные файлы OCX, DLL и пр. Именно из них (элементов управления) и строится большая часть приложений. Конечно, в этом нет ничего страшного — САВ-файл содержит в себе все необходимое и при его разворачивании на компьютер клиента грузится только то, что у него отсутствует. Тем не менее мастер Package and Deployment для приложения FirsApp, в том случае, если бы его захотели эксплуатировать по Интернету, создал бы файл объемом в 7 990 Кбайт. Кроме этого он создал бы еще кучу полезных файлов, например, файл FIRSTAPP.HTM для запуска приложения из браузера: <HTML> <SCRIPT LANGUAGE= "VBScript"> Стоит какому-нибудь пользователю запустить из своего браузера с моей Web-странички этот файл, то он, после небольшой паузы, увидит на своем экране то же, что вижу я в результате работы приложения, а именно распечатку и таблицу с данными (см. рис. 1.24). Однако и тут кроются подводные камни. А что будет, если требуемая таблица с данными отсутствует на вашем компьютере? Браузер в этом случае выдаст предупреждающее сообщение и нарисует пустые клетки. Но ведь я таблицу не экспортирую. Конечно, можно экспортировать и ее или, по крайней мере, ее реплику, однако более предпочтительным представляется вариант, когда работать с таблицей надо непосредственно на сервере, никуда ее не перетаскивая. В таком случае, зачем вообще к себе что-то грузить? Не лучше ли, чтобы и все программы исполнял сервер? Но тут мы уже вступаем в область принципиально иных подходов и технологий, которые имеются и у Microsoft, и у соперничающих с нею фирм. Об этих подходах и технологиях речь пойдет в следующих разделах книги, а пока скажем еще несколько слов об Active Desktop. |
|
Библиотека программиста. 2009. |
|