2011-08-31 3 views
3

최근에 MFC 프로젝트 양식 VS6을 VS2005로 이식했습니다. VS6 프로젝트는 VS2005에서 사용 된 '새로운'MFC와 더 이상 호환되지 않는 ddao35d.lib (DAO 3.5)를 연결했습니다. 다른 게시물에서 권장하는 지금 afxdao.h 포함하고 CDaoDatabaseCdbDatabase에서 내 데이터베이스 클래스를 변경하고있어이 문제를 얻으려면 : -DAO를 사용하여 Access 데이터베이스의 복제 ID 가져 오기

GetReplicaID()라는 CdbDatabase의 멤버 함수입니다 그러나, 한

http://www.experts-exchange.com/Programming/Languages/CPP/Q_22465486.html

하는 더 이상 CDaoDatabase에 없습니다. 누구든지 CDaoDatabase 클래스 또는 다른 방법을 사용하여 Access 데이터베이스의 복제본 ID를 얻는 방법을 알고 있습니까? 여기

은 해당 게시물에서 중요한 exerpts 있습니다 : -

"비주얼 C++ .NET의로, 비주얼 C++ 환경은 더 이상 지원 DAO를 위저드합니다 (DAO 클래스가 포함되어 있으며 여전히 사용할 수 있지만)

ddao35d.lib을 비롯한 DAO MFC 라이브러리는 PlatformSDK의 일부이며 새 버전과 호환되지 않습니다. MFC. #include해야하고 daouuid.lib를 링크 할 것입니다. " ddao35.lib 더 이상 분명히 CdbLastOLEError TO CDaoErrorInfo의 선언을 변경 CdbLastOLEError는 여전히, 그러나에 변경 :

...

"

은 추가하지 않고 daouuid.lib 트릭 PLUS이었다... CDaoErrorInfo 및 daouuid.lib 추가로 연결하면 링커 오류가 해결되었습니다. "

+0

를 참조 왜 해당 웹 사이트의 회원으로 관객을 요구하는 질문에 대한 링크를 게시나요? 귀하의 질문에 대한 링크를 클릭하십시오. – Taryn

답변

0

솔루션을 찾았습니다. CDaoDatabase 클래스의 m_pDAODatabase 멤버를 통해 직접 DAO에 액세스 할 수 있습니다. EG : - 자세한 내용은

CDaoDatabase dbDatabase; 
COleVariant varReplicaID("", VT_BSTRT); 
HRESULT hr; 
hr = dbDatabase.m_pDAODatabase->get_ReplicaID(& V_BSTR(&varReplicaID)); 

http://msdn.microsoft.com/en-us/library/1s0dx3s7.aspx

관련 문제