CDataSource::Open
Ouvre une connexion à une source de données à l'aide de CLSID, Identificateur programmatique (ProgID), ou le moniker d' CEnumerator ou invite l'utilisateur à 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] CLSID du fournisseur de données.pPropSet
[in] Un pointeur vers un tableau de DBPROPSET structure contenir des propriétés les valeurs et à définir.Consultez jeux de propriétés et groupes de propriétés dans OLE DB Programmer's Reference dans Kit de développement logiciel Windows.nPropertySets
[in] le nombre de structures de DBPROPSET est passé dans l'argument de pPropSet .pName
[in] Le nom de la base de données à laquelle se connecter.pUserName
[in] le nom d'utilisateur.pPassword
[in] Le mot de passe de l'utilisateur.nInitMode
[in] mode d'initialisation de base de données.Consultez propriétés d'initialisationdans OLE DB Programmer's Reference dans Kit de développement logiciel Windows pour obtenir la liste des modes d'initialisation valides.Si nInitMode est zéro, ce mode d'initialisation n'est inclus dans le jeu de propriétés utilisé pour ouvrir la connexion.szProgID
[in] un identificateur de programme.enumerator
[in] Un objet de CEnumerator utilisé pour obtenir un moniker pour ouvrir la connexion lorsque l'appelant ne spécifie pas CLSID.hWnd
[in] Handle de la fenêtre qui doit être le parent.En utilisant la surcharge de fonction qui utilise le paramètre d' hWnd appelle automatiquement des composants de service ; voir notes pour plus de détails.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
HRESULTstandard.
Notes
La surcharge de méthode qui utilise le paramètre d' 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 des ressources, inscription automatique des transactions, et ainsi de suite.Pour plus d'informations, consultez « services OLE DB » dans OLE DB Programmer's Reference dans https://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/oledbole_db_services.asp?frame=true.
Les surcharges de méthode qui n'utilisent pas le paramètre d' hWnd ouvrez un objet source de données sans utiliser les composants de service dans oledb32.dll.Un objet de CDataSource ouvrir avec ces surcharges de fonction ne pourra pas utiliser la fonctionnalité l'une des composants de service.
Exemple
Le code suivant montre comment ouvrir une source de données de Jet 4,0 avec les modèles OLE DB.Vous gérez la source de données throw comme source de données OLE DB.Toutefois, l'appel à Ouvrir requiert deux jeux de propriétés : un pour DBPROPSET_DBINIT et l'autre pour DBPROPSET_JETOLEDB_DBINIT, afin que vous puissiez définir DBPROP_JETOLEDB_DATABASEPASSWORD.
CDBPropSet rgDBPropSet[2]; // Declare two property sets;
// set properties elsewhere as appropriate.
hr = m_DataSource.Open(szProgId, rgDBPropSet, 2);
Configuration requise
Header: atldbcli.h