Возвращает зарегистрированную информацию (в Реестре Windows) о некотором объекте COM, к примеру, об объектах  Visual FoxPro Automation Server.

COMCLASSINFO(oObject [, nInfoType])

Параметры

oObject

Определяет Объектную ссылку на уже созданный объект COM или OLE.

nInfoType

Определяет тип возвращаемой информации. В следующей таблице описаны возможные значения параметра nInfoType и краткое описание возвращаемой в этом случае информации.

nInfoType Возвращаемая информация

1 (по-умолчанию)

Программный идентификатор Объекта (ProgID). Значение ProgID размещается в Реестре по соответствующей ссылке на класс CLSID.

2

Характеристика объекта VersionIndependentProgID. Значение VersionIndependentProgID соответствует основным указателям на объект ProgID и CLSID. Она  указывает на последнюю версию Приложения, содержащего данный объект, ссылочный идентификатор на класс приложения, который не изменяется от версии к версии.

3

Базовое наименование Объекта.

4

Идентификатор Класса Объекта (CLSID). Значение CLSID является глобальным уникальным идентификатором класса соответствующего объекта COM.

5

Определение типа Объекта:    Значение      Тип Объекта          1       =        Объект Visual FoxPro,          2      =         Контрол ActiveX,          3      =        Компонента COM,          4     =          Объект OLEBound (поле General )

Expand imageВозвращаемое значение

Символьного типа (Character)

Expand imageКомментарии

Функция COMCLASSINFO( ) возвращает пустую строку, если нет зарегистрированной информации об указанном объекте. Система Visual FoxPro, как Automation Server,  Объект COM, позволяет создавать соответствующие объекты типа (.exe) и типа (.dll), для этого используется системные средства Project Manager.

Если вы создаете экземпляр некоторого Контрола ActiveX, например при помощи функции CREATEOBJECT( ), как показано в программном коде ниже, то при указании параметра nInfoType = 5,  функция возвращает значение = 3 (Компонента COM), а вам требуется  = 2.

 CopyCode imageКопировать Код
X=CREATEOBJECT("MSComctlLib.treectrl.2")

Если возвращается значение = 2 (Контрол ActiveX), то вы можете использовать требуемый Объект, как показано в следующем примере:

 CopyCode imageКопировать Код
ox.addobject("oc","olecontrol","MSComctlLib.treectrl.2")

Expand imageСм. также