Зворотний зв'язок

Поняття про Component Objects Model

oExcel = GetOBJECT("с:\budget.xls").

При цьому одночасно буде створений екземпляр об'єкту Excel, відкритий файл і одержано посилання на нього.

Зверніть увагу - Visual FoxPro навіть не довелося пояснювати, що запрошуваний файл є файлом Excel. Windows вже відомо, що файли з розширенням .xls є листами Excel, і операційна система поступає відповідно.

Якщо ситуація не так однозначна, як в даному випадку, тобто розширення імені файлу не визначає однозначно додаток, який з ним оперує, потрібне в другому параметрі виклику функції getobject () вказати ім'я СОМ-класу (додатку-серверу).

До сказаного слід додати: функція getobject () настільки кмітлива, що другий раз не запускатиме вже працюючий додаток, а приєднає до нього файл, що цікавить вас.

Отримання ссилки на раніше запущений додаток-сервер

Якщо ви бажаєте одержати тільки посилання на раніше запущений додаток-сервер, достатньо при виклику функції GETOBJECT () опустити перший параметр:

oExcel = GetOBJECT(, "Excel.Application")

Якщо виявиться, що ви "промахнулися", тобто додаток не був раніше запущено, з'явиться повідомлення про помилку OLE.

Читаючи розділ 21 ви зможете переконатися на прикладах, як зручно користуватися цією функцією для отримання посилань на додаток-сервер без запуску його додаткових екземплярів.

Команда SET OLEOBJECT

За замовчуванням Visual FoxPro шукає клас, вказаний в CREATEOBJECT (), в реєстрі Windows, якщо він не був знайдений у всіх попередніх групах класів, як про це було сказано вище. Цю функцію можна відключити установкою SET OLEOBJECT off. Фактично при цьому відключається можливість роботи з СОМ-об'єктами.

Коли в цьому може виникнути потреба? Коли ви упевнені, що з СОМ-об'єктами працювати не будете, і бажаєте зберегти час і ресурси, позбавивши систему від необхідності проглядати реєстр у пошуках того, чого там явно нема.

Якщо при цьому ви турбуєтеся про можливість роботи з елементами управління ActiveX, то цього робити не варто. Така настройка не перешкоджає роботі з ними, оскільки Visual FoxPro знає про те, що це OLE-об'єкти, і автоматично завантажує засоби підтримки OLE перед тим, як їх відкрити.

У будь-якому випадку настройка зачіпає тільки роботу з тими об'єктами, які явно специфіковані в коді програми.

І ще одне зауваження. Оскільки функція GETOBJECT () завжди має справу з OLE-об'єктами, то при установці SET OLEOBJECT OFF функція поверне код помилки.

Функція ComClassInfo ()

Функція ComClassInfo () використовується для отримання інформації з системного реєстру про раніше створені СОМ-об'єкти. Перший параметр функції, oObject, представляє ссилку на об'єкт, інформація про який вас цікавить. Другий параметр, iІnfoCode, є числом, яке визначає, яка саме інформація повинна бути витягнута. Можливі значення iІnfoCode приведені в табл. 20.1.

Таблиця 20.1. Інформація, що повертається функцією Comciassinfо () при різних значення параметра iinfoCode

Значення ilnfoCodеІнформація, що Повертається


Реферати!

У нас ви зможете знайти і ознайомитися з рефератами на будь-яку тему.







Не знайшли потрібний реферат ?

Замовте написання реферату на потрібну Вам тему

Замовити реферат