к оглавлению VB   VBScript   VBA   VB7 (.NET)   к 4GL - визуальному программированию

Создание дистрибутива приложения. Мастер установки

  1. Введение.
  2. Создание исполняемого файла.
  3. Мастер установки.
  4. Использование мастера.
  5. Создание дистрибутива для проекта калькулятора.
  6. Создание дистрибутива элемента управления.

Введение

Все что пишется  в Visual Basic должно выполняться вне среды разработчика Visual Basic, требут файла Msvbvm.dll. Этот файл содержит все подпрограммы поддержки и существенные элементы управления, которые необходимы Visual Basic, чтобы выполнять все что угодно. Это довольно большой файл (1,3 М). Но, к счастью, не имеет значения, сколько приложений Visual Basic выполняет пользователь в одно и тоже время, все равно в памяти необходима только одна копия этого файла.
    Для каждого пользовательского элемента управления в приложении и для того, что является частью вашего элемента управления, необходим файл пользовательского элемента управления. Эти файлы относительно малы- часто менне 30К каждый. В результате то, что оказывается необходимым для инсталляции исполняемых файлов не находится на машине, куда производится инсталляция, то даже простейший исполняемый файл Visual Basic, даже подвергнутый сжатию при помощи мастера установки потребует 2 или более дисков.


Примечание: Разработчику действительно нужно убедиться, что пользователи его проекта или элемента управления не имеют файла Msvbvm50.dll и других файлов поддержки, т.к. многие пользователи Windows уже будут иметь на своих машинах эти файлы. Например, большинство пользоваптелей Internet Explorer уже будут их иметь, и можно предположить, что вскоре Microsoft будет просто инсталлировать этот файл вместе с инсталляцией файлов операционной системы. Это сильно уменьшит дисковое пространство, необходимое джля создания дистрибутивов проектов Visual Basic.

    И, наконец, когда выполняет исполняемый файл, который содержит пользовательский элемент управления, .ocx-файл должен находиться в системном каталоге или в одном каталоге с .exe-файлом. Мастер установки автоматически размещает файлы в соотвествующем месте. (Если соотвествующий .ocx файлне может быть найден, то виртуальная машина Visual Basic выведет сообщение об ошибке и завершит выполнение.)
 
Создание исполняемого файла

    Тот, кто перед покупкой своей копии Visual Basic читал какую либо рекламу о нем, возможно, слышал, что Visual Basic 5-первая версия Visual Basic, которая позволяет создавать действительно исполняемые файлы. Кто-то возможно, удивится, что же это значит. Прежде всего, предыдущие версии Visual Basic всегда транслировали код Visual Basic в некий р-код. Это промежуточный язык, который отличается от машинного кода микропроцессора Intel. А затем полученный р-код построчно интерпретировался в машинный код Intel. Но это не эффективно. Например, для циклов явно легче выполнить перобразование в машинный код один раз и не преобразовывать код каждый раз при выполнении тела цикла.

 
 
 
  Рисунок 23-1.Диалоговое окно Make Project. .
 
    Только версии Professional и Enterprise имеют возможность создавать действительно исполняемые файлы. Этого можно достичь выбором пунктов File|Make Exe или File|Make осх и последующим нажатием кнопки Options в диалоговой панели Make Project, показанной на рис. 23-1.
 
 
 
Рисунок 23-2.Cтраница Make.
 
    То, что будет видно, показано на рис. 23-2. На этой странице диалоговой панели можно добавить информацию о версии элемента управления и о защите прав. Здесь также устанавливается значок для проекта, который пользователь увидит представления исполняемого файла, и информацию командной строки, если такая предусматривается.
    Если есть версия Professional или Enterprise, щелкнем на закладке Compile. Покажется экран, приведенный на рис. 23-3. Пройдемся поочередно по всем опциям в этой важной диалоговой панели.

Compile to P-Code. Позволяет скомпилировать проект в р-код. Хотя он выполняется медленнее, но необходимое дисковое пространство может быть значительно меньшим по сравнению с кодом, скомпилированным в машинный код микропроцессора.

Compile to Native Code. Позволяет скомпилировать проект, используя родной код с оптимизациями того, что выбирается посредством оставшихся кнопок. Они описаны в следующей таблице.
 
 
 
 
 
Кнопка
Описание
Optimize for Fast Code
Максимально увеличивает скорость выполнения.
Optimize for small Size
Минимизирует размер. Вероятно, этим значительного преимущества перед простым использованием р-кода достигнуто не будет.
No Optimize
Компилирует без оптимизации.
Favor Pentium Pro
Оптимизирует код таким образом, что он лучше всего работает на процессоре Pentium Pro. Код, сгенерированный с этой опцией, будет работать и с более ранними процессорами, но на процессорах 486 и Pentium (даже если они используют MMX), будет работать медленнее, чем тот код, но сгенерированный без этой опции.
Create symbolic Debug Info
Используется, когда надо запустить свой VB-код на отдельном отладчике, такой как один из отладчиков фирмы NuMega или тех, что поставляются с компонентами Microsoft DevStudio.
 
 
    
 


Примечание: Программа, которая выполняет большое количество циклов, такая, как, например, стандартные тесты, покажет поразительное ускорение - часто даже десятикратное по сравнению с программами на Visual Basic 4. На практике, однако, ускорение, вероятно, будет значительно меньше (часто менее 50 процентов, иногда даже около 20 процентов).

Advanced Optimizations. Нажатие этой кнопки выведет на экран диалоговую панель Advanced Optimizations, показанную справа. Не рекомендуется изменять какие-либо опции в этой панели, установленные по умолчанию - они только для больших знатоков VB.
 

 

Мастер установки

    Мастер установки - это действительно отличный инструмент, который позволяет создавать дистрибутивы приложений и элементов управления практически без усилий. Это действительно автономная программа, которая называется Application Setup Wizard. Можно запустить ее, к примеру, посредством подменю Visual Basic 5 в меню Start. (Предположим, что используется стандартная установка, тогда программа мастера установки будет называться VB\setupkit\kitfil32\Setupwiz.exe).
 


 Примечание: Перед тем как использовать мастер установки, следует по крайней мере хотя бы раз откомпилировать код, а также сохранить проектный файл.

    Когда запускается мастер установки, мы попадаем на начальный экран мастера установки, который выглядит, как рис. 23-4.
    Разберемся с пунктами в основной панели. Прежде всего, здесь есть кнопка помощи Help, которая выведет файл справки для мастера. Кнопка выхода Exit в верхнем правом углу панели закрывает мастер установки. Кнопка движения вперед Next перемещает к следующему шагу мастера, а кнопка Back возвращает к предыдущему. Щелкнем на кнопке Next, чтобы перейти к первому реальному экрану мастера.
Далее приведены описания новых пунктов этого экрана.

Project File Text Box. Файлом проекта является имя файла с расширением .vbp. Можно щелкнуть на кнопке Browse, для того чтобы открыть стандартную диалоговую панель, которая позволяет осуществить поиск файла .vbp или .ctl (для элемента управления).

Rebuild the Protect. Файлы, дистрибутивы которых создаются, являются автономно выполняемыми. Если необходимо создать, отдельный продукт заново, надо пометить эту опцию. Мастер будет автоматически создавать новый .ехе-файл, или .осх —если .ехе не найден.

Options. Возможные опции описаны в следующей таблице.
 
 
 
 
Опция 
Описание
Creat a setup Programm Сообщает о том, что требуется создать обычную программу установки на гибких дисках. Если также установить опции Generate Dependency File, то матер установки создаст отчет, содержащий информацию о файлах, которые использует приложение. 
Creat Internet Download Setup Эта опция используется только для элементов управления ActiveX и создает все необходимые файлы таким образом, что кто-либо по сети Internet сможет использовать этот код.
Generate Dependency File Only Установка этой опции только создает отчет, содержащий информацию о файлах, которые использует приложение.
 
 
    
 

Использование мастера

Для наглядности предположим, что надо создать дистрибутивы двух различных приложении:

Создание дистрибутива для проекта калькулятора
 
 
Рисунок 23-3. Страница Compile.
 
Начнем с простого проекта калькулятора, который можно найти в подкаталоге \samples\PGuide\calc каталога VB. Сначала придется скомпилировать этот проект, так как он не поставляется в исполняемой форме. Итак, загрузим VB и затем скомпилируем проект Calc.vbp. После этого введем имя и путь к файлу Calc.vbp и щелкнем на кнопке Next (которая сейчас доступна). После некоторого промежутка времени, необходимого для обработки файлов, перейдем к экрану шага 3 мастера установки.
 
 
Рисунок 23-4. Начальный экран мастера установки.
 
    В этом экране надо сообщить мастеру, где сохранять дистрибутив. Например, выберем гибкие диски. Для этого щелкнем на опции Floppy Disk. Щелкнем по кнопке Next и попадем на экран, где сообщим мастеру о типе используемых дискет.
    Щелкнем по кнопке Next. Получающийся экран, используется только для серверов ActiveX - это более сложная тема, которую мы не рассматривали в этой книге. Щелкнем по кнопке Next, чтобы пропустить этот экран.
    После небольшой задержки появится экран File Summary. Если выбрать любой из этих файлов и щелкнуть по кнопке File Details, мастер выведет на экран диалоговую панель. Она содержит подробную информацию о выбранном файле. Если щелкнуть на Summary Details в экране File Summary, увидим диалоговую панель с информацией.
    Щелкнем по кнопке Next, при нахождении в экране FileSummary и перейдем к экрану Finished.
    Если сейчас щелкнуть по кнопке Finished, мастер начнет выводить информационные панели с сообщениями о выполняемых им действиях (сжатие файлов, вычисление файлов, которые необходимо скопировать, и так далее). Когда это будет выполнено, на экране появится информационная панель, похожая на ту, что приведена справа. Она попросит вставить первый (из двух в данном случае) дисков.
    А сейчас пользователи могут инсталлировать приложение, просто помещая первый диск дистрибутива в дисковод и запуская из Windows программу Setup.exe, содержащуюся на нем.
      Программа инсталляции, созданная мастером установки, соответствует всем стандартам Windows. Пользователи могут изменить каталог установки; они могут наблюдать за ходом выполнения процесса инсталляции по диаграмме; и им также будет сообщаться, когда вставлять очередной диск. (К тому же, посредством функции AddRemove в Windows возможна деинсталляция приложения.)
 
Создание дистрибутива элемента управления

    Создание дистрибутива элемента управления в мастере установки для использования на отдельной системе по существу аналогично созданию дистрибутива приложения. Так что в этом разделе сосредоточимся на использовании мастера для создания файла установки Internet Download Setup таким образом, чтобы элемент управления мог быть использован в Internet Explorer.
      Запустим мастер. Необходимо заметить, что мы хотим создать дистрибутив элемента управления таким образом, чтобы он мог быть загружен из Internet или в интрасеть. После принятия решения сделать Interenet-установку щелкнем по кнопке Next и перейдем к следующему экрану.
    Щелкнем по кнопке Next. Появится следующий экран. Microsoft предоставляет опцию, которая позволяет пользователю загружать только определенные стандартные файлы, как, например, огромный файл виртуальной машины Visual Basic, необходимый для элемента управления, прямо с сайта Microsoft при первом использовании элемента управления в Internet Explorer. Это действительно очень полезная опция, так как если пользователи уже имеют какие-либо из необходимых файлов на своей машине, то Internet Explorer достаточно разумен для того, чтобы не загружать их заново.  
    В основном это все. Оставшиеся экраны мастера подобны тем, что мы уже обсуждали.

к оглавлению VB   VBScript   VBA   VB7 (.NET)   к 4GL - визуальному программированию

Знаете ли Вы, в чем фокус эксперимента Майкельсона?

Эксперимент А. Майкельсона, Майкельсона - Морли - действительно является цирковым фокусом, загипнотизировавшим физиков на 120 лет.

Дело в том, что в его постановке и выводах произведена подмена, аналогичная подмене в школьной шуточной задачке на сообразительность, в которой спрашивается:
- Cколько яблок на березе, если на одной ветке их 5, на другой ветке - 10 и так далее
При этом внимание учеников намеренно отвлекается от того основополагающего факта, что на березе яблоки не растут, в принципе.

В эксперименте Майкельсона ставится вопрос о движении эфира относительно покоящегося в лабораторной системе интерферометра. Однако, если мы ищем эфир, как базовую материю, из которой состоит всё вещество интерферометра, лаборатории, да и Земли в целом, то, естественно, эфир тоже будет неподвижен, так как земное вещество есть всего навсего определенным образом структурированный эфир, и никак не может двигаться относительно самого себя.

Удивительно, что этот цирковой трюк овладел на 120 лет умами физиков на полном серьезе, хотя его прототипы есть в сказках-небылицах всех народов всех времен, включая барона Мюнхаузена, вытащившего себя за волосы из болота, и призванных показать детям возможные жульничества и тем защитить их во взрослой жизни. Подробнее читайте в FAQ по эфирной физике.

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution