Поделиться через


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

См. также

Ссылки

Класс CDataSource