CDataSource::Open
Открывает соединение с источником данных с использованием CLSID, Идентификатор программы или моникер CEnumerator или предлагает пользователю с диалоговым окном локатора.
HRESULT Open(
const CLSID& clsid,
DBPROPSET* pPropSet = NULL,
ULONG nPropertySets = 1
) throw( );
HRESULT Open(
const CLSID& clsid,
LPCTSTR pName,
LPCTSTR pUserName = NULL,
LPCTSTR pPassword = NULL,
long nInitMode = 0
) throw( );
HRESULT Open(
LPCTSTR szProgID,
DBPROPSET* pPropSet = NULL,
ULONG nPropertySets = 1
) throw( );
HRESULT Open(
LPCTSTR szProgID,
LPCTSTR pName,
LPCTSTR pUserName = NULL,
LPCTSTR pPassword = NULL,
long nInitMode = 0
) throw( );
HRESULT Open(
const CEnumerator& enumerator,
DBPROPSET* pPropSet = NULL,
ULONG nPropertySets = 1
) throw( );
HRESULT Open(
const CEnumerator& enumerator,
LPCTSTR pName,
LPCTSTR pUserName = NULL,
LPCTSTR pPassword = NULL,
long nInitMode = 0
) throw( );
HRESULT Open(
HWND hWnd = GetActiveWindow( ),
DBPROMPTOPTIONS dwPromptOptions = DBPROMPTOPTIONS_WIZARDSHEET
) throw( );
HRESULT Open(
LPCWSTR szProgID,
DBPROPSET* pPropSet = NULL,
ULONG nPropertySets = 1
) throw( );
HRESULT Open(
LPCSTR szProgID,
LPCTSTR pName,
LPCTSTR pUserName = NULL,
LPCTSTR pPassword = NULL,
long nInitMode = 0
) throw( );
Параметры
clsid
[in] CLSID поставщика данных.pPropSet
[in] указатель на массив структур DBPROPSET, содержащий свойства и значения.См. раздел наборы свойств и группы свойств в справочнике программиста OLE DB в Windows SDK.nPropertySets
[in] число структур DBPROPSET, переданных в аргумент pPropSet.pName
[in] имя базы данных, к которой осуществляется подключение.pUserName
[in] имя пользователя.pPassword
[in] пароль пользователя.nInitMode
[in] режим инициализации базы данных.См. раздел свойства инициализации в справочнике программиста OLE DB в Windows SDK для получения списка допустимых режимов инициализации.Если nInitMode нуль, режим инициализации не включен в наборе свойств, используемом для открытия соединения.szProgID
[in] идентификатор программы " a ".enumerator
[in] объект CEnumerator, используемый для получения моникер для открытия соединения, если вызывающая сторона не определит CLSID.hWnd
[in] дескриптор окна, быть родительским элементом диалогового окна.Использование перегруженную версию функции, которая использует параметр hWnd автоматически вызывает компонентов службы; дополнительные сведения см. в разделе " примечания ".dwPromptOptions
[in] задает стиль диалогового окна локатора для отображения.См. раздел Msdasc.h для возможных значений.
Возвращаемое значение
Стандартное HRESULT.
Заметки
Перегрузка метода, которая использует параметр hWnd открывает объект источника данных с компонентами службы в oledb32.dll; эта библиотека DLL содержит реализацию функций компонентов службы, как создание пулов ресурсов, Автоматическое прикрепление транзакций и т дДополнительные сведения см. в разделе «службы» OLE DB» в справочнике программиста OLE DB https://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbole_db_services.asp?frame=true.
Перегруженные варианты методов, которые не используют открытый параметра hWnd объект источника данных без использования компонентов службы в oledb32.dll.Объект CDataSource открытый с этими перегрузками функции не сможет использовать любую функциональность компонентов службы.
Пример
В следующем примере кода показано, как открыть источник данных с шаблонами Jet 4.0 OLE DB.Обрабатывается источник данных jet в качестве источника данных OLE DB.Однако вашему вызову Открыть нужны 2 набора свойств: одно для DBPROPSET_DBINIT, а другой для DBPROPSET_JETOLEDB_DBINIT, так что можно задать DBPROP_JETOLEDB_DATABASEPASSWORD.
CDBPropSet rgDBPropSet[2]; // Declare two property sets;
// set properties elsewhere as appropriate.
hr = m_DataSource.Open(szProgId, rgDBPropSet, 2);
Требования
Header: atldbcli.h