Udostępnij za pośrednictwem


CDataSource::Open

Otwiera połączenie do źródła danych za pomocą CLSID, ProgID, lub CEnumerator moniker lub monituje użytkownika, podając okno dialogowe lokalizatora.

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( );

Parametry

  • clsid
    [w] CLSID dostawca danych.

  • pPropSet
    [w] Wskaźnik do tablicy DBPROPSET struktury zawierające właściwości i wartości, które można ustawić.Zobacz zestawy właściwości i grup właściwości w OLE DB Programmer's Reference w Windows SDK.

  • nPropertySets
    [w] Liczba DBPROPSET przekazany struktur pPropSet argument.

  • pName
    [w] Nazwa bazy danych do połączenia.

  • pUserName
    [w] Nazwa użytkownika.

  • Phasło
    [w] Hasło użytkownika.

  • nInitMode
    [w] Tryb inicjowania bazy danych.Zobacz Właściwości inicjującew OLE DB Programmer's Reference w Windows SDK listę inicjowania prawidłowe tryby.Jeśli nInitMode jest zero, inicjowanie trybu jest zawarte w zestawie właściwości używane do otwarcia połączenia.

  • szProgID
    [w] Identyfikator programu.

  • enumerator
    [w] A CEnumerator , można uzyskać monikera do otwarcia połączenia, gdy obiekt wywołujący nie określi obiektu CLSID.

  • hWnd
    [w] Dojście do okna, które ma być elementem nadrzędnym w oknie dialogowym.Za pomocą przeciążenie funkcja, która używa hWnd parametr zostanie automatycznie wywoływać składniki usługi; Aby uzyskać szczegółowe informacje, zobacz uwagi.

  • dwPromptOptions
    [w] Określa styl okna dialogowego lokalizatora do wyświetlenia.Zobacz Msdasc.h możliwe wartości.

Wartość zwracana

Standard HRESULT.

Uwagi

Przeciążenie metodą korzystającej z hWnd parametr otwiera obiekt źródła danych z usługi Składniki w oledb32.dll; Ta biblioteka DLL zawiera implementacji funkcji usługi składników, takich jak pule zasobów, automatyczne umieszczanie transakcji i tak dalej.Aby uzyskać więcej informacji, zobacz temat "Usługi bazy danych OLE" w OLE DB Programmer's Reference w https://msdn.microsoft.com/library/default.asp?url=/ library/en-us/oledb/htm/oledbole_db_services.asp?frame=true.

Przeciążenia metody, które nie korzystają z hWnd parametr otworzyć obiekt źródła danych bez użycia składników usługi w oledb32.dll.A CDataSource obiekt otwarty z przeciążeniem tych funkcji nie będzie można wykorzystać funkcjonalności składników usługi.

Przykład

Poniższy kod przedstawia sposób otwierania źródła danych aparatu Jet 4.0 z szablonami OLE DB.Źródło danych Jet można traktować jako Yródło danych OLE DB.Jednak, żeby Otwórz potrzebuje dwóch zestawów właściwości: jeden dla DBPROPSET_DBINIT , a drugą dla DBPROPSET_JETOLEDB_DBINIT, dzięki czemu można ustawić DBPROP_JETOLEDB_DATABASEPASSWORD.

CDBPropSet rgDBPropSet[2];  // Declare two property sets; 
                            // set properties elsewhere as appropriate.

hr = m_DataSource.Open(szProgId, rgDBPropSet, 2);

Wymagania

Nagłówek: atldbcli.h

Zobacz też

Informacje

CDataSource — Klasa