Архитектура Microsoft Windows для разработчиков

         

Формат Unicode


Строки в файлах ресурсов хранятся в формате Unicode. Он позволяет использовать больший диапазон символов, чем при однобайтном кодировании, поскольку все символы Unicode являются двухбайтными.

Внутреннее представление символов в Windows NT (но не в Windows 95) использует формат Unicode.

Пример Здесь строка преобразуется в формат Unicode с помощью функции Visual Basic StrConv с константой vbUnicode:

strUnicodeValue = StrConv("String Value", vbUnicode)

Пример Здесь строка в формате Unicode преобразуется в строку в формате ANSI с помощью той же функции и константы vbFromUnicode:

StrANSIvalue = StrConv(strUnicodeValue, vbFromUnicode)



Хранение строк в файлах ресурсов


При разработке приложений на Visual Basic вместо ссылок на строки, рисунки и данные применяются функции LoadResString, LoadResPicture и LoadResData. Хранение этих элементов в файле ресурсов имеет два преимущества:

повышается производительность и снижаются затраты благодаря загрузке строк, изображений, значков и данных по мере надобности из файла ресурсов вместо одновременной загрузки вместе с формой или модулем;

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

Пример Вот пример использования функции Visual Basic LoadResString. Аргумент Index задает идентификатор данных в файле ресурсов.

strValue = LoadResString(Index)

> Использование файла ресурсов

Запустите Microsoft Visual Basic 5 и создайте новый проект типа Standard EXE.

Добавьте элементы управления в форму так, как показано на рисунке ниже. Не меняйте заданные по умолчанию имена элементов.

Элемент управления в левом верхнем углу — это изображение. Свяжите его свойство Picture с любым понравившимся Вам значком, который Вы найдете в каталоге Graphics\Icons.

Добавьте в событие обработки щелчка на кнопке Exit код закрытия приложения.



Сохраните свою работу в файле Forml.frm и Lab04.vbp в папке WA\Practice\ Ch04.

> Использования файла ресурсов в Visual Basic

Из каталога WA\Practice\Ch04 добавьте в проект файл ресурсов под названием Lab.res.

Для этого щелкните правой кнопкой в окне Project Explorer и выберите в меню команду Add. Щелкните кнопку Add File и найдите нужный файл ресурсов на диске.

В окне Project Explorer дважды щелкните Related Documents, чтобы удостовериться, что файл ресурсов добавлен в проект.

Откройте окно кода для события Form_Load.

Добавьте приведенный ниже код для загрузки ресурса «изображение» с идентификатором 100 и его связывания со свойством Picture элемента управления «изображение»:

Image1.Picture = LoadResPicture(100, vbResIcon)

Добавьте приведенный ниже код для загрузки ресурса «строка» с идентификатором 100 и его связывания со свойством Caption элемента управления «метка»:


Label-1. Caption = LoadResString(IOO)

Запустите приложение.

Если ресурсы загружены правильно, форма будет выглядеть вот так.



Измените код в проекте Form_Load так, чтобы использовались рисунок и строка под номером 200.

Запустите приложение.

Коды символов

Символы в системе представлены своими кодами. Они генерируются и сохраняются, когда пользователь создает документ. Однобайтные наборы символов содержат 256 кодов: этого достаточно для кодирования большинства символов основных языков. Например, набор символов Windows Extended ANSI содержит 256 символов, включая латинские буквы, арабские цифры, знаки препинания и изобразительные элементы.

Однако 256 кодов недостаточно для хранения всех символов одного шрифта на разных языках или для языков, использующих алфавит большого размера (например, в китайском языке более 12 000 символов-иероглифов). В подобных случаях применяются многобайтные наборы символов (обычно их называют двухбайтными).


Клиент-серверная разработка


Средствами Visual FoxPro можно проектировать и создавать клиент-серверные приложения. Этот инструмент профессионального разработчика позволяет быстро реализовывать приложения, конструировать объектно-ориентированные программы и является прекрасным клиентом для доступа к серверным БД. Клиент-серверные приложения, созданные с помощью Visual FoxPro, эффективны, поддерживают работу с большими объемами данных и обладают встроенными средствами защиты для серверов и ODBC-источников данных.

Для построения высокопроизводительных клиент-серверных приложений применяют и Visual Basic. Элемент управления для работы с удаленными данными (Remote Data Control) на основе ODBC оптимизирован для таких систем, как Microsoft SQL Server и Oracle?. Он содержит полную библиотеку OLE-объектов поддержки доступа к базам данных. Кроме того, Visual Basic поддерживает асинхронные запросы. Например, используя Remote Data Objects (RDO) в клиент-серверной программе, Вы сумеете решать различные задачи, пока в фоновом режиме выполняется большой запрос.

Visual InterDev облегчает интеграцию технологий клиент-сервер и Web, что позволяет разрабатывать конкурентоспособные коммерческие Web-приложения.

Для построения приложений доступа к базам данных Visual C++ использует клиент-серверные технологии и библиотеку Microsoft Foundation Classes (MFC). Visual C++ предоставляет в распоряжение разработчика классы и компоненты, инкапсулирующие подключение к БД и выполнение транзакций. В состав Visual C++ включены и средства для работы с накопленной корпоративной информацией, что упрощает интеграцию приложений с существующими сетями и мэйнфреймами.

Microsoft Office

Microsoft Office — интегрированный пакет офисных приложений, снабженный средствами доступа в Интернет и предоставляющий массу инструментов для более эффективной работы (рис. 4.4). Microsoft Office позволяет создавать собственные решения с использованием Visual Basic for Applications, который входит в состав всех приложений Microsoft Office.

Средства Microsoft Word упрощают обработку текста.

Microsoft Excel — электронная таблица для анализа, составления отчетов и совместного использования данных.

Microsoft PowerPoint предназначен для создания и распространения презентаций.

Microsoft Outlook поможет Вам управлять электронной почтой, календарем, групповыми расписаниями, контактами, задачами и списками дел.

Microsoft Access — настольная реляционная база данных, позволяющая совместно использовать информацию и разрабатывать приложения для нужд бизнеса.

Рис. 4.4 Семейство Microsoft Office



Microsoft Office Binder


Приложение Microsoft Office Binder позволяет объединить несколько документов Office в единый файл. В подшивку Office Binder можно вставить документы:

Microsoft Excel;

Microsoft Word;

Microsoft PowerPoint.

Будучи объектным приложением OLE, Office Binder включает простую модель объектов, которая позволяет сохранять, извлекать и распечатывать документы подшивки. Для доступа к объектам Office Binder средствами OLE-автоматиза-ции на компьютере надо установить Microsoft Office.



Microsoft Visual Basic


Microsoft Visual Basic — самый простой метод разработки приложений для Microsoft Windows. Он включает полный набор средств быстрого создания приложений (Rapid Application Development, RAD) как для опытных профессионалов, так и для тех, кто только начинает программировать для Windows.

Слово «Visual» в названии пакета отражает метод создания графического пользовательского интерфейса (GUI). Теперь Вы избавлены от утомительного программирования описаний внешнего вида и положения элементов интерфейса вручную: Visual Basic позволяет скомпоновать диалоговое окно или другой элемент из готовых объектов методом «перетащить и отпустить», а затем сам генерирует необходимый код. Basic — это язык программирования, лежащий в основе Visual Basic. Теперь он содержит несколько сотен операторов, функций и ключевых слов, большинство которых относятся непосредственно к графическим интерфейсам Windows. Новички, изучив лишь несколько ключевых слов, могут приступить к созданию приложений, однако Visual Basic далеко не примитивен. Мощные средства позволяют ему успешно конкурировать с другими языками программирования для Windows: например, с его помощью можно создавать повторно используемые ActiveX-компоненты. Visual Basic позволяет:

быстро разрабатывать приложения;

получать доступ к базам данных (БД) для создания высокопроизводительных приложений и компонентов;

вести коллективную разработку и масштабировать приложения при помощи Microsoft Visual Modeler, Visual Database Tools, Visual Source Safe и SQL Server;

создавать приложения для таких сред, как Интернет, применяя имеющийся код и навыки программирования;

конструировать повторно используемые ActiveX-компоненты для клиент-серверных архитектур, Интернета и Microsoft Transaction Server;

использовать компилятор для генерации кода, оптимизированного для различных процессоров, включая Pentium Pro.



Microsoft Visual C++


Хотя C++ можно использовать и как процедурный язык, объектно-ориентированный подход Visual C++ обеспечивает программистам доступ ко всем возможностям этого языка программирования. Средства Visual C++ и объектно-ориентированный подход уменьшают затраты на разработку за счет повторного использования созданных объектов.

Microsoft Visual C++ — современная среда для объектно-ориентированной разработки приложений, которая поддерживает:

открытые стандарты, например ISO и ANSI;

различные методы разработки;

масштабируемость от однопользовательских приложений-клиентов до приложений многоуровневой архитектуры клиент-сервер, включающей распределенные объекты и высокопроизводительные серверы баз данных;

создание повторно используемых программных компонентов — средства Visual C++ позволяют создавать мощные низкоуровневые компоненты для последующего применения в других приложениях.



Microsoft Visual InterDev


Это интегрированная визуальная среда для коллективной разработки Web-проектов (рис. 4.2). Visual InterDev автоматически публикует разработанные компоненты на Web-сервере, а также позволяет управлять этим узлом. В его состав включены визуальные средства проектирования баз данных для создания Web-узлов, работающих с БД. Вот некоторые компоненты, включенные в состав Visual InterDev:

средства разработки активных страниц сервера;

персональный Web-сервер (только для Windows 95);

средства управления Web-узлом;

Image Composer — инструмент для графического наполнения Web-страниц;

Media Manager — инструмент для редактирования мультимедиа: он помогает комбинировать изображения и звук;

Music Producer — средство создания звуковых файлов.

Рис. 4.2 Компоненты Visual InterDev



Microsoft Visual J++


Visual J++ — визуальная объектно-ориентированная среда разработки программ на языке Java. В ней используется тот же пользовательский интерфейс, что и в Microsoft Visual C++. Программировать на Visual J++ можно только на компьютерах под управлением Windows 95 и Windows NT 4.0, однако созданный код работает на любой платформе, поддерживающей виртуальную Java-машину.



Модель объектов VBA


Создание решений на базе Microsoft Office возможно благодаря тому, что функции приложения доступны через программируемые объекты.

Применение компонентов Office сокращает затраты на разработку, укорачивает ее цикл и позволяет конструировать более мощные решения. Бизнес-процессы, в которых используются такие программные продукты, отличаются стабильностью и упорядоченностью.

Посредством языка VBA можно управлять компонентами Microsoft Office и встраивать их объекты в бизнес-решения. Например, объект «диаграмма Microsoft Excel» предоставляет мощные средства работы с диаграммами, а объект «отчет Microsoft Access» снабдит бизнес-приложение универсальными средствами создания отчетов, включенными в Microsoft Access.

Пример VBA включает множество объектов — например, для создания экземпляра компонента Office применяется объект Application. Вот как это сделать:

'Объявить объект Application

Dim XL As Excel.Application

'Использовать функцию CreateObject

Dim XL2 As Object

Set XL2 = CreateObject("Excel.Application")



Объектно-ориентированное программирование


В отличие от процедурного, этот тип программирования требует объектно-ориентированного проектирования и соответствующего языка программирования.

При обычном подходе программа представляет собой набор процедур для обработки данных. Объектно-ориентированные программы, напротив, состоят из объектов — программных модулей, которые инкапсулируют сами данные и их обработку. Вот четыре основные характеристики объектно-ориентированного языка программирования:

абстракция;

инкапсуляция;

наследование;

полиморфизм.

Ниже перечислены компоненты Visual Studio, обладающие этими параметрами и, следовательно, считающиеся объектно-ориентированными языками программирования:

Visual C++;

Visual FoxPro;

Visual J++.



Поддержка различных процессоров и платформ


Если приложение должно работать на процессорах нескольких типов — MIPS, Alpha, RISC или PowerPC, то наилучшее решение — Visual C++. Дело в том, что приложения Visual Basic могут выполняться только на платформах Windows.

Язык C++ — открытый, гибкий и легко переносимый. Он считается основным при разработке приложений для доступа ко всем возможностям большинства платформ. Visual C++ позволяет, например, сохранить готовый код, вложенные средства и накопленные знания при переносе Windows-приложений на системы UNIX и Macintosh.



Пользовательский интерфейс и оболочка


Для приложения обязательно использование системных метрик. Это означает, что оно должно быть совместимо с параметрами стандартных классов окон и элементов управления. Системные цвета, размеры, шрифты, звуки задают соответствующий интерфейс и позволяют конкретному пользователю настроить систему по своему вкусу. Эти параметры извлекаются при помощи функций API GetSystemMetrics, SystemParametersInfo и GetSysColors. В некоторых системах разработки, например Visual Basic, это делается автоматически: при проектировании формы можно задать ее положение, шрифты, цвета и другие характеристики.

Пример Приведенный ниже вызов функции Visual Basic возвращает высоту строки заголовка формы:

Declare Function GetSystemMetrics Lib "user32"

Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long

Const SM_CYCAPTION = 4'Высота заголовка или названия

Dim HeightY As Double

HeightY = GetSystemMetrics(SM_CYCAPTION)



Преимущества Microsoft Visual C++


Microsoft Visual C++ позволяет:

создавать полнофункциональные приложения для различных платформ. Он предоставляет единый набор средств для построения программ, которые могут выполняться под управлением ОС Microsoft Windows NT, Windows 95, Windows СЕ и Macintosh;

компилировать программы для процессоров MIPS R4000, Alpha и Power PC;

ускорить проектирование баз данных за счет применения Visual Database Tools;

создавать более эффективные и компактные 32-разрядные приложения для ОС Windows 95 и Windows NT;

проектировать СОМ-компоненты, включая их визуальное редактирование и языково-независимый просмотр;

быстро создавать серверы, контейнеры и объекты автоматизации, а также элементы управления ActiveX при помощи библиотеки Microsoft Foundation Classes (MFC) и мастеров.



Преимущества Visual Basic


Простота разработки Windows-приложений.

Простота изучения.



Преимущества Visual FoxPro


Устойчивое ядро БД, оптимизированное для работы с большими наборами данных — оптимальный выбор для программистов, ориентированных на Xbase.

Сохранение существующих Xbase-приложений для Windows NT и Windows 95.

Visual Class Designer позволяет создавать классы без изучения синтаксиса объектов.

Быстрая разработка приложений с использованием технологий объектно-ориентированного программирования.

Библиотеки классов позволяют компоновать приложения из готовых протестированных фрагментов.

Выбор средства разработки из семейства Visual Studio

Прежде всего стоит проанализировать особенности приложения, которое Вы будете разрабатывать. В частности, попытайтесь ответить на следующие вопросы.

Будет ли приложение выполняться на платформах, отличных от Windows?

Нужны ли при разработке объектно-ориентированные методы?

Будет ли приложение выполняться на Web-странице?

Возможности Visual Basic Visual С++ Visual InterDev Visual J++ Visual FoxPro
Объектно-ориентированный подход - X - X X
Создание повторно используемых компонентов X X - X -
Компиляция программ для процессоров MIPS, Alpha и PowerPC - X - - -
Создание приложений для Интернета и активных страниц сервера - - X - -
Возможности клиент-серверной разработки X X X - X



Преимущества Visual InterDev


Включает все средства для создания динамических Web-приложений.

Позволяет создавать интерактивные решения для доступа к базам данных из произвольной программы просмотра Web на любой платформе.

Позволяет использовать знакомые языки создания сценариев Visual Basic Scripting Edition (VBScript) и JavaScript для создания приложений, выполняющихся на Web-сервере.

Содержит визуальные компоненты и мастера для автоматической генерации кода HTML и сценариев.

Позволяет немедленно тестировать сценарии и просматривать HTML-файлы за счет автоматического обновления файлов на Web-сервере.

Даже без системы контроля версий разработчики могут сообща проектировать Web-узел, создавая свои собственные локальные файлы проекта, которые указывают на общий Web-узел. Локальные проекты содержат отдельные рабочие каталоги и значения параметров для каждого программиста.

Исключает необходимость физического доступа к компьютеру Web-сервера для создания, модификации и удаления файлов Web-приложения, реализуя доступ к серверу по протоколу HTTP. Этот подход, в частности, обеспечивает защиту: сам узел и разработчики могут находиться по разные стороны брандмауэра.

> Создание Web-страницы в Visual InterDev

В этом упражнении Вы средствами Microsoft Visual InterDev создадите Web-страницу и добавите к кнопкам сценарии на языках JavaScript и VBScript.

В меню Start выберите команды Programs, Microsoft Visual InterDev, Visual InterDev 1.0.

В меню File щелкните команду New.

Откройте вкладку Projects и выберите Web Project Wizard.

В окне Project Name введите MyWebProject.

В поле Location введите WA\Practice\Ch04\MyWebProject и щелкните кнопку ОК.

Задайте имя сервера по умолчанию localhost и щелкните Next.

Щелкните кнопку Finish для сохранения параметров по умолчанию.

В меню File щелкните команду New.

На вкладке File выберите HTML Page. В окне File Name наберите MyFirstPage и щелкните кнопку ОК.

Вы увидите, что приведенная ниже строка кода подсвечена.

<!- Insert HTML here ->

Удалите этот текст клавишей BACKSPACE.


В окне редактора кода наберите следующий код:

<form>

<input type = "button" value = "Test JavaScript"

name = "cmdJavaCode" OnClick="bln=JavaCode()">

<input type = "button" value = "Test VBScript"

name = "cmdVBCode">

</form>

<script language="javascript">

var bln = false

function JavaCode() {

alert("Hello from JavaScript!")

return true

} </script>

<script language="VBScript">

Sub cmdVBCode_OnClick

MsgBox "Hello from VBScript!"

End Sub

</script>

В меню File выберите команду Save.

> Предварительный просмотр созданной Web-страницы

В окне Workspace щелкните правой кнопкой значок MyFirstPage.htm.

Щелкните кнопку Preview in Browser.

Web-страница откроется в программе просмотра, зарегистрированной в Visual InterDev в качестве программы просмотра по умолчанию.

Щелкните кнопку Test JavaScript, а затем — кнопку ОК в окне сообщения.

Щелкните кнопку Test VBScript, а затем — кнопку ОК в окне сообщения.

В окне Workspace дважды щелкните значок MyFirstPage.htm, чтобы вернуться в окно сценария.

Сохраните проект и закройте Visual InterDev.

> Проверка нового Web-узла

Запустите Internet Explorer.

Откройте страницу: http://localhost/MyWebProject/MyFirstPage.htm

Проверьте обе кнопки.

Закройте Internet Explorer.


Преимущества Visual J++


Visual J++ позволяет:

создавать 100%-совместимые с Java переносимые апплеты и приложения или интегрировать их с существующими приложениями. Апплет — это Java-программа, встраиваемая в HTML-страницу. Когда пользователь просматривает HTML-документ с Java-апплетом, код апплета передается на компьютер пользователя, компилируется и выполняется программой просмотра;

сохранить наработанный опыт программирования и готовый Java-код;

компилировать код со скоростью более 10 000 строк в секунду;

быстро находить и исправлять ошибки; средствами отладчика Visual J++ Вы сможете тестировать в программе просмотра несколько апплетов одновременно;

используя DAO и RDO, создавать приложения для эффективного доступа к базам данным;

комбинировать ActiveX-компоненты с Java-приложениями и создавать повторно используемые ActiveX-компоненты на языке Java.

Microsoft Visual FoxPro

Microsoft Visual FoxPro — объектно-ориентированная среда для проектирования баз данных и разработки приложений. Ее средствами можно создавать объекты и классы, обладающие истинными свойствами наследования, инкапсуляции и другими отличительными особенностями объектно-ориентированного проектирования.

В состав Visual FoxPro входят все необходимые инструменты для создания таблиц, выполнения запросов, построения интегрированных систем управления реляционными базами данных и приложений для управления данными. Основа Visual FoxPro — полноценное ядро сервера реляционной БД, оптимизированное для работы с большими наборами данных. Благодаря Microsoft Visual FoxPro, семейство Visual Tools пополнилось:

набором объектно-ориентированных средств для создания повторно используемых компонентов;

инструментами для работы с мощным ядром БД и для поддержки архитектуры клиент-сервер;

мощной интерактивной средой обработки данных.

Visual FoxPro, подобно Microsoft Visual Basic, можно применять для создания серверов автоматизации, что позволит другим приложениям использовать Ваши наработки. Например, таким образом реализуется готовый код обработки данных для вызова из приложений Microsoft Office или через Internet Information Server. В результате сохраняется готовый код и в то же время применяются последние достижения технологии.

Как и Visual Basic, серверы автоматизации Visual FoxPro поддерживают удаленную автоматизацию для создания распределенных многоуровневых клиент-серверных приложений.



Разработка приложений


Глава 4. Разработка приложений

Прежде всего

Для изучения занятий этой главы необходимы:

Visual InterDev;

Visual Basic 5.0.

Занятие 1. Платформы разработки

Занятие 2. Соответствие логотипу Microsoft Windows

Занятие 3. Локализация приложений

Закрепление материала



Разработка приложений для Интернета


Visual J++ и Visual InterDev — оптимальный выбор при разработке приложений для Интернета и интрасети. Visual J++ позволяет создавать код для всех платформ, где есть виртуальная Java-машина или программа просмотра Web с поддержкой Java.

Visual InterDev обеспечивает автоматическое создание кода HTML и сценариев (VBScript и JScript) Web-узлов, работающих с базами данных. Построенные таким образом решения доступны любой программе просмотра Web на любой платформе.



Реестр Windows


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

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

Соответствующие локальной установке имена каталогов и другие параметры, необходимые для проверки правильности установки, следует извлекать непосредственно из реестра.

Примечание. Подробную информацию и спецификации соответствия логотипу Вы найдете на Web-узле www.microsoft.com/windows/thirdparty/winlogo.



многопрофильное семейство визуальных средств разработки


Visual Studio 97 — многопрофильное семейство визуальных средств разработки приложений различных типов. Многие компоненты пакета выполняют схожие функции. Выбирая конкретное средство, сначала проанализируйте особенности приложения, которое Вы будете конструировать. В состав Visual Studio 97 входят:
Visual Basic;
Visual C++;
Visual InterDev;
Visual J++;
Visual FoxPro.
Microsoft Office — это семейство приложений, на основе которого можно создавать бизнес-решения. В него входят:
Word;
Excel;
PowerPoint;
Outlook;
Access.
Visual Basic for Applications (VBA) — новая версия Visual Basic в составе Microsoft Office, которая позволяет создавать адаптированные решения на основе приложений Office.

Чтобы соответствовать логотипу, приложение должно


Чтобы соответствовать логотипу, приложение должно удовлетворять набору требований в отношении установки, интерфейса, именования файлов и совместимости. Кроме того, оно должно правильно использовать реестр Windows для хранения предпочтений пользователя, имен и путей файлов и другой необходимой приложению информации. И, наконец, необходимо, чтобы приложение напрямую запрашивало реестр для извлечения соответствующих локальной установке имен каталогов и проверки правильности установки.

Локализация делает возможным использование программного


Локализация делает возможным использование программного продукта на другом языке. Этой операции подлежат экранная информация, документация, справочные файлы, сценарии, шаблоны, модели, файлы примеров, значки и символы. На практике локализуемую информацию отделяют от кода приложения посредством файлов ресурсов, применяя в коде функции загрузки ресурса вместо самих ресурсов — строк, изображений и т.п. Ресурсы изолированы в одном файле, что позволяет локализовать приложение без доступа к исходному коду или его перекомпиляции. Строки в ресурсах хранятся в формате Unicode, поддерживающем многобайтные наборы символов.

Создание подшивки средствами VBA


В этом упражнении Вы создадите новый файл подшивки и добавите в него документы Microsoft Word и Microsoft Excel.

> Создание подшивки и добавление компонентов

Запустите Microsoft Visual Basic.

Создайте новый проект типа Standard EXE.

В меню Project щелкните References.

Установите ссылку на Microsoft Binder 8.0 Object Library.

Включите в форму командную кнопку cmdCreate, назвав ее &Create Binder.

В событии cmdCreate_Click введите следующий код:

Dim BND As OfficeBinder.Binder

Set BND = CreateObject("Office. Binder")

BND.Visible = True

BND.Sections.Add ("Word.Document")

BND.Sections.Add ("Excel.Sheet")

BND.SaveAs filename:="NewBinder.obd"

BND.Close 0

Set BND = Nothing

В меню Run щелкните Start.

Щелкните кнопку Create Binder.

Приложение создаст экземпляр подшивки Office Binder и посредством автоматизации добавит в нее документ Word и электронную таблицу Excel.

Завершите работу программы и закройте Visual Basic.

Использование VBA

В этих упражнениях Вы примените Visual Basic for Applications в Word и Excel.

> Использование VBA в Microsoft Word

Запустите Microsoft Word и откройте файл VBA.doc в папке WA\Practice\Ch04.

Если понадобится, в ответ на запрос об отключении макросов щелкните Enable Macros.

В меню View, Toolbars установите флажок Visual Basic.

В панели инструментов щелкните Design Mode.

Поместите курсор в конец документа.

В панели управления Control щелкните значок Command Button.

Щелкните правой кнопкой мыши кнопку Command и выберите в меню ко манду Properties.

Измените значение свойства Caption командной кнопки на Calculate.

Закройте диалоговое окно Properties.

Дважды щелкните кнопку Command, чтобы открыть окно кода VBA.

В процедуре обработки щелчка кнопки CommandButton1 наберите следую щий код (он вычисляет ежемесячную выплату по кредиту):

On Error GoTo ErrorHandler

If APR > 1 Then APR = APR / 100 'Проверка значения If chkEOM = True Then

PayType = 0 Else

PayType = 1 End If

IblMOpayment = Format(Pmt(APR / 12, TotPmts, -Pval, 0, PayType), "currency") Exit Sub


ErrorHandler:

IblMOpayment = 0

Закройте редактор Visual Basic.

Переключитесь в окно документа Word.

В панели инструментов щелкните кнопку Exit Design Mode. Теперь заполните поля.

Введите значения в каждое поле и щелкните кнопку Calculate.

Сохраните изменения в документе и закройте Word.

> Использование VBA в Microsoft Excel

Запустите Microsoft Excel.

В меню View, Toolbars установите флажок Visual Basic.

В панели инструментов Visual Basic щелкните Design Mode.

В панели инструментов Visual Basic щелкните Control Toolbox.

Добавьте в электронную таблицу Excel элемент управления «командная кнопка».

Дважды щелкните на CommandButtonI для открытия редактора VBA.

В событии Click командной кнопки наберите следующий код:

Cells.Range("A1") = "Hello world!"

Щелкните Exit Design Mode в панели инструментов Visual Basic.

Закройте редактор VBA.

Щелкните кнопку CommandButtonI в Microsoft Excel.

В первой ячейке электронной таблицы появится строка «Hello World!».


Создание повторно используемых программных компонентов


Visual C++ — наиболее мощный инструмент для разработки программ. В его состав входит редактор СОМ для построения и управления объектами СОМ (эта технология подробно обсуждается в главе 5), а также мастера для создания ActiveX-элементов и компонентов. Visual C++ поддерживает генерацию и компиляцию кода для СОМ, визуальное редактирование СОМ-компонентов и ускоренную разработку небольших компонентов на основе библиотеки шаблонов ActiveX (Active Template Library, ATL).

Visual Basic — один из самых простых и быстрых методов разработки ActiveX-элементов. Мастера интерфейса ActiveX-элемента (ActiveX Control Interface Wizard), страницы свойств (Property Page Wizard) и установки (Setup Wizard) помогут Вам создавать и распространять ActiveX-элементы.

Средства Visual J++ позволяют расширять возможности Java-кода Windows-приложений и создавать повторно используемые серверные ActiveX-компоненты (в частности, с помощью мастера).



Универсальное соглашение об именах и длинные имена файлов


Приложения должны поддерживать длинные имена файлов (Long File Names, LFN) и универсальное соглашение об именах (Universal Naming Convention, UNC). Это означает, что пользователь вправе ввести имя файла длиной до 255 символов, которое может включать все стандартные строчные и прописные символы, внутренние пробелы и точки. Запрещены лишь пробелы в начале и в конце.

UNC-пути обеспечивают логическое подключение к сетевым устройствам без применения символа устройства. Приложение может не знать, что работает в сети, но должно прозрачно поддерживать работу сетевой среды.

Пример.Вот примеры длинного имени: C:\Program Files и UNC-пути сетевого устройства:\\Userl\Drive_C.



Установка и удаление


В комплект поставки приложения должна входить 32-разрядная графическая программа установки, которая:

регистрирует компоненты;

автоматически определяет тип операционной системы;

по умолчанию предлагает для установки приложения папку \Program Files.

проверяет возможность установки приложения посредством инструментария Install Analyzer;

содержит регистрируемую программу для автоматического удаления установленного приложения;

удаляет установленное приложение полностью, не затрагивая базовые или совместно используемые компоненты, применяемые другими приложениями.



Виртуальная Java-машина


Она необходима для выполнения Java-программ. Виртуальная машина — это эмулируемый программным способом процессор байт-кода Java. Она преобразует байт-коды в инструкции операционной системы, под управлением которой работает виртуальная машина, аналогично тому, как Visual C++ переводит исходный код в команды для конкретной платформы (рис. 4.3). В результате Java-код выполняется на любой платформе, где есть виртуальная Java-машина.

Рис. 4.3 Выполнение Java-программ



Visual Basic for Applications


Microsoft Visual Basic for Applications (VBA) — это новая версия Visual Basic, включенная в состав приложений Office.

Если Visual Basic работает с формами и элементами управления, VBA действует в контексте соответствующего приложения. Наиболее значительное различие между VB и VBA состоит в том, что последний не поддерживает обработку событий. В то же время приложение, в контексте которого выполняется VBA, открывает ему доступ к своим объектам и функциям, например:

к диаграммам или сводным таблицам Microsoft Excel;

к формам Microsoft Access;

к документам Microsoft Word.

Возможны три базовых сценария использования VBA:

модификация методов и свойств объектов приложения;

интеграция компонентов (ActiveX-элементов), разработанных сторонними производителями, со своим приложением;

объединение объектов нескольких приложений в единое целостное решение.



Закрепление материала


Закрепление материала

Приведенные ниже вопросы помогут Вам лучше усвоить основные темы данной главы. Если Вы не сумеете ответить на вопрос, повторите материал соответствующего занятия. Правильные ответы приведены в разделе «Вопросы и ответы» в конце книги.

Каковы преимущества и особенности Visual Basic и Visual C++?

ответ

В чем преимущество разработки с помощью Java?

ответ

Опишите преимущества Microsoft Visual FoxPro и Microsoft Access.

ответ

Что означает логотип Designed for Windows NT and Windows 95 для конечных пользователей?

ответ

Чем реестр Windows полезен приложениям? Удобен разработчикам?

ответ

В каком формате хранятся строки в файле ресурсов?

ответ

Какие функции Visual Basic применяются для ссылок на строки, изображения, данные и другие ресурсы?

ответ



Платформы разработки


Занятие 1. Платформы разработки

(Продолжительность занятия 100 минут)

Компания Microsoft предлагает широкий спектр средств разработки решении. В настоящее время наиболее популярны две среды разработки: Microsoft Visual Studio и Microsoft Office.

Visual Studio 97 — многопрофильное семейство визуальных средств создания многоуровневых клиент-серверных приложений и приложений для Интернета.

Microsoft Office позволяет быстро создавать, модифицировать и развертывать полнофункциональные решения.

На этом занятии Вы познакомитесь с компонентами Visual Studio и стратегией выбора подходящего средства разработки. Здесь также описаны компоненты семейства Microsoft Office и то, как с помощью Visual Basic for Applications настроить решения на основе Office для работы в конкретных условиях.

Изучив материал этого занятия, Вы сможете:

описать компоненты Microsoft Visual Studio;

выбрать средство разработки из состава семейства Visual Studio, подходящее для конкретной ситуации.

Microsoft Visual Studio

Microsoft Visual Studio — многофункциональный комплекс визуальных средств разработки для создания открытых и масштабируемых клиент-серверных и Интернет-приложений (рис. 4.1). Средства проектирования и создания приложений, входящие в это семейство, адресованы корпоративным отделам информационного обеспечения, поставщикам программного обеспечения и независимым разработчикам.

Рис. 4.1 Семейство Visual Studio

В состав Visual Studio входят следующие средства разработки:

Visual Basic;

Visual C++;

• Visual InterDev;

Visual J++;

Visual FoxPro.

Кроме того, в Visual Studio включены специальные, ориентированные на разработчиков, версии Microsoft Transaction Server и SQL Server.

Примечание Работа с компонентами Visual Studio детально описана в справочных материалах на компакт-диске библиотеки разработчика Microsoft Solution Developers Network (MSDN) Library CD.



Соответствие логотипу Microsoft Windows


Занятие 2. Соответствие логотипу Microsoft Windows

(Продолжительность занятия 20 минут)

Назначение программы Designed for Windows NT and Windows 95 — помочь конечным пользователям выбрать аппаратные и программные продукты, разработанные специально для 32-разрядных ОС семейства Windows.

На этом занятии Вы узнаете, каким стандартам должно удовлетворять приложение, чтобы получить этот логотип.

Изучив материал этого занятия, Вы сможете:

описать требования на получение логотипа Windows;

объяснить, как реестр Windows используется в разработке приложений.

Логотип Designed/or Windows NT and Windows 95 (рис. 4.5) гарантирует пользователю, что отмеченные им программные и аппаратные компоненты поддерживают новые технологии, реализованные этими операционными системами.

Рис. 4.5 Логотип Designed for Microsoft Windows NT and Windows 95

Логотип Designed for Windows NT and Windows 95 сообщает покупателю, что продукт:

протестирован и все его функции доступны под управлением Windows NT и Windows 95;

соответствует стандартам Windows;

разработан на основе самых современных программных и аппаратных технологий Microsoft Windows NT и Windows 95;

использует 32-разрядный код;

протестирован компанией Veritest — независимой организацией, которая проверяет продукты на соответствие требованиям Windows.

Если продукт состоит из нескольких приложений (в этом случае его, как правило, называют «семейство» или «пакет»), для получения логотипа тестируется каждое его приложение.

Требования на получение логотипа

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



Локализация приложений


Занятие 3. Локализация приложений

(Продолжительность занятия 25 минут)

Цель локализации — перевод программного продукта и настройка для работы на другом языке. Помимо экранной информации и документации, необходимо локализовать справочные файлы, сценарии, шаблоны, модели и файлы примеров.

Что касается интерфейса, то здесь локализуют не только язык, но и другие элементы: значки, символы и т.д. Например, пользователи в Соединенных Штатах легко опознают округлый почтовый ящик с флагом на боку как значок почтовой программы, но пользователи в других странах могут не понять этой аналогии. На этом занятии Вы познакомитесь с методами локализации приложений.

Изучив материал этого занятия, Вы сможете:

рассказать о применении файлов ресурсов для разработки приложений;

описать кодировку Unicode и ее назначение.

Файлы ресурсов

Файлы ресурсов — это полезный механизм для отделения локализуемой информации от кода. Строковые ресурсы ссылаются на текст, применяемый в таких элементах пользовательского интерфейса приложения, как меню, диалоговые окна, информационные и предупреждающие сообщения и сообщения об ошибках. Если приложение предназначено для пользователей региона, отличающегося от места разработки приложения, эти ресурсы должны быть локализованы.