ADO에서 hr = m_pConnection.CreateInstance(__uuidof(Connection)); 에러날때..

컴터 상황에 따라 다른데 원인은 정확히 모르겠다.
일단 내 자리에서는 잘 되는데 다른 컴터에서 MS-SQL 접속할려고하면
0x80004002 에러를 뿝는거다.

그래서 검색했다.
역시 구글신
http://support.microsoft.com/kb/2517589
이곳에 설명이 있다.

이글 쓰면서 위 사이트 읽어보니 원인도 있구먼.
윈도7sp1에서 좀 바뀌었다 뭐 주절주절.

암튼 해결방법은 위 사이트 가면

요 3개중에 자신의 상황에 맞는것을 골라 잡고
해당 파일을 c:/program files/common files/system/ado 에 넣어준다.
그리고 종전에 ADO 쓰기 위해서

#import “c:\program files\common files\system\ado\msado15.dll” no_namespace rename( “EOF”, “adoEOF”)

이렇게 썼던것을

#import “c:\program files\common files\system\ado\msado60_Backcompat_i386.tlb” no_namespace rename(“EOF”,”EndOfFile”)

이런식으로 바꿔주면 된다. (뒤에 adoEOF가 EndOfFile 로 바뀐거 잊지 말라고)
위 사이트에서는 레지스트 바꾸라고 하는데 안바꿔도 저렇게 하면 되더군.


Comments

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다