Partager via


CDataSource : : Ouvrez

Établit une connexion à une source de données en utilisant CLSID, ProgID, ou le moniker de CEnumerator ou incite l'utilisateur avec une boîte de dialogue de localisateur.

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

Paramètres

  • clsid
    [in] Le CLSID du fournisseur de données.

  • pPropSet
    [in] pointeur sur un tableau de structures DBPROPSET contenant les propriétés et valeurs à définir. Voir le Jeux de propriétés et de propriétés dans OLE DB guide de référence du programmeur dans Kit de développement logiciel Windows.

  • nEnsembleProprietes
    [in] nombre de structures DBPROPSET passé dans l'argument de pEnsembleproprietes.

  • pNom
    [in] Nom du serveur de base de données auquel se connecter.

  • pNomUtilisateur
    [in] Nom de l'utilisateur

  • pMotdepasse
    [in] Mot de passe de l'utilisateur.

  • nInitMode
    [in] mode d'initialisation de base de données. Voir le Propriétés d'initialisationdans OLE DB guide de référence du programmeur dans Kit de développement logiciel Windows pour obtenir la liste des modes d'initialisation valides. Si nInitMode est zéro, aucun mode d'initialisation n'est inclus dans le jeu de propriétés servant à ouvrir la connexion.

  • szProgID
    [in] Un identificateur de programme

  • enumerator
    [in] objet de CEnumerator utilisé pour obtenir un moniker pour ouvrir la connexion lorsque l'appelant ne spécifie pas CLSID.

  • hWnd
    [in] descripteur de la fenêtre qui doit être le parent de la boîte de dialogue. Utilisation de la surcharge de fonction qui utilise le paramètre de hWnd appelle automatiquement des composants de service ; consultez la section notes pour plus d'informations.

  • dwPromptOptions
    [in] détermine le style de la boîte de dialogue de localisateur à afficher. Consultez Msdasc.h pour les valeurs possibles.

Valeur de retour

Un HRESULT standard.

Notes

Cette méthode de surcharge qui utilise le paramètre de hWnd ouvre un objet source de données avec les composants de service dans oledb32.dll; cette DLL contient l'implémentation des fonctionnalités de composants de service telles que le regroupement de ressources, inscription automatique des transactions, et bien d'autres. Pour plus d'informations, consultez « services OLE DB » dans OLE DB guide de référence du programmeur à https://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbole_db_services.asp?frame=true.

Les surcharges de la méthode qui n'utilisent pas le paramètre de hWnd ouvrez un objet source de données sans utiliser les composants de service dans oledb32.dll. Objet de CSourceDonnées ouvert avec les surcharges de fonction ne peut pas utiliser aucune fonctionnalités des composants de service.

Exemple

Le code suivant indique comment ouvrir une source de données Jet 4,0 avec les modèles OLE DB. Vous traitez la source de données Jet comme source de données OLE DB. Toutefois, l'appel à Ouvrir requiert deux jeux de propriétés : pour un DBENSEMBLEPROPRIETE_DBINITIALISATION et l'autre pour DBENSEMBLEPROPRIETE_JETOLEDB_DBINITIALISATION, afin que vous puissiez définir DBPROP_JETOLEDB_BASEDEDONNEESMOTDEPASSE.

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

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

Configuration requise

En-tête : atldbcli.h

Voir aussi

Référence

classe de CDataSource