다음을 통해 공유


CDataSource::Open

연결을 사용 하 여 데이터 원본에 있는 CLSID, ProgID, 또는 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 0, 아니오 초기화 모드 연결을 열 때 사용 되는 속성 집합에 포함 됩니다.

  • szProgID
    [in] 프로그램 식별자입니다.

  • enumerator
    [in] A 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 서비스 구성 요소를 사용 하지 않고 데이터 원본 개체를 엽니다.A CDataSource 이러한 함수 오버 로드로 연 개체 수 없습니다 서비스 컴포넌트의 기능을 활용 합니다.

예제

다음 코드는 Jet 4.0 데이터 소스 OLE DB 템플릿을 엽니다 방법을 보여 줍니다.OLE DB 데이터 원본으로 Jet 데이터 소스를 처리합니다.그러나 호출 열기 속성 집합 두 개를 해야: 하나에 대 한 DBPROPSET_DBINITDBPROPSET_JETOLEDB_DBINIT설정할 수 있도록, DBPROP_JETOLEDB_DATABASEPASSWORD.

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

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

요구 사항

헤더: atldbcli.h

참고 항목

참조

CDataSource 클래스