Создание контроллеров автоматизации



Создание контроллеров автоматизации с помощью C++Builder - часть 7


}

//отключить диагностику при закрытии сервера

XL.OlePropertySet(“DisplayAlerts”,false);

XL.OlePropertyGet(“Workbooks”).OlePropertyGet(“Item”,1).OleProcedure(“SaveAs”,”test.xls”);

XL.OleProcedure(“Quit”);

}

//———————————————————————————————

Отметим, что для запуска Excel в фоновом режиме без отображения его окна на экране достаточно убрать из кода С++Builder строку:

XL.OlePropertySet(“Visible”,true);

wpe13.jpg (37824 bytes)

Результат работы приложения

Следует обратить внимание на то, что вариантная переменная XL объявлена за пределами процедуры манипуляции OLE-сервером. Это сделано для того, чтобы существование вариантной переменной не ограничивалось данной процедурой.

Использование информации из библиотек типов

Отметим, что в приведенном выше примере рабочая книга и рабочие листы были созданы с применением параметров, предлагаемых по умолчанию. Каким образом можно изменить эти параметры?

Рассмотрим следующий пример кода:

XL=CreateOleObject(“Excel.Application.8”);

XL.OlePropertySet(“Visible”,true);

v0=XL.OlePropertyGet(“Workbooks”);

v0.OleProcedure(“Add”,-4109);

Данный пример заставляет Excel создать пустой лист с диаграммой на основе шаблона, отличного от принятого по умолчанию.

Откуда в данном случае взялась константа –4109? Каким образом можно узнать, какими еще константами можно пользоваться при автоматизации с использованием данного сервера?

Ответы на эти вопросы можно получить, открыв библиотеку типов данного сервера. Сделать это можно, выбрав пункт меню File/Open, указав в списке возможных файлов Type Library и выбрав соответствующую библиотеку типов (для Excel это Excel8.olb, для Word – MSWord8.olb). При этом по истечении некоторого времени (эти библиотеки очень велики) будут созданы файлы с описанием всех использованных констант, а также свойств и методов содержащихся в сервере объектов (в данном случае Excel_TLB.cpp и Excel_TLB.h для С++Builder либо Excel_TLB.pas для Delphi). При создании этих файлов появятся сообщения об ошибках, связанные с тем, что в коде Excel и Word могут использоваться зарезервированные слова Object Pascal или С++.




Содержание  Назад  Вперед