Объекты
- перечислители обеспечивают поиск любых объектов ADO, которые
имеют доступ к источникам данных. При этом другие перечислители
также видны в данном перечислителе.
Первичный
поиск источников данных осуществляется в провайдере ADO. Перечислители
могут отбирать только источники данных конкретных типов, поэтому
провайдер обеспечивает доступ к конкретному типу хранилища данных.
В
составе ADO имеется системный корневой перечислитель, который
выполняет начальный поиск других перечислителей и источников данных.
Его можно использовать, зная его идентификатор класса CLSID_OLEDB_ENUMERATOR.
В
Delphi GUID глобального перечислителя содержится в файле \Delphi7\Source
\Vcl\OleDB.pas.
CLSID_OLEDB_ENrjMERATOR:
TGUID= '{C8B522DO-5CF3-11CE-ADE5-OOAA0044773D}
Функции
перечислителя содержатся в интерфейсе isourcesRowset. Метод
function
GetSourcesRowset(const punkOuter: lUnknown; const riid: TGUID;
cPropertySets: UINT; rgProperties: PDBPropSetArray; out ppSourcesRowset:
lUnknown): HResult; stdcall;
возвращает
ссылку на объект набора рядов (см. выше), содержащий сведения
о найденных источниках данных или перечислителях.