Как обрабатывать команду, которую я ничего не знаю О?
Существует четыре вещи делать при обработке неизвестной команды: определить параметры, выполните команду, определить выходные столбцы и увидеть, если есть несколько наборов строк возврата. Для этого с шаблонов потребителей OLE DB, используйте класс CManualAccessor и выполните следующие действия
Открыть объект CCommand с CManualAccessor как параметр шаблона.
Запросите сеанс для интерфейса IDBSchemaRowset и используйте набор строк параметров процедуры. Если не доступен интерфейс IDBSchemaRowset , запрос для интерфейса ICommandWithParameters . Звоните GetParameterInfo для информации. Если интерфейсы недоступны, можно предположить, что параметров нет.
Для каждого из параметров вызовите AddParameterEntry , чтобы добавить параметры и задавать их.
Откройте набор строк, но параметр bind значение ложь.
Вызовите GetColumnInfo для извлечения выходных столбцов. Используйте AddBindEntry для добавления выходного столбца в привязке.
Вызовите GetNextResult , чтобы определить, доступны ли более наборы строк. Повторите шаги 2-5.
См CDBListView::CallProcedure в образец DBVIEWER для примера.