VC++에서 ADO를 사용하는 방법은 크게 2가지가 있다.

1. OLE DB SDK라이브러리를 이용하는 방법
2. #import를 이용하여 Type Library를 이용하는 방법

전 개인적으로 2번째 방법을 선호합니다.
그리고 Type Library를 import 하면 스마트 포인터를 사용할수 있기때문에 편리합니다.

#import를 할려면 msadoxx.tlb 파일이나 msadoxx.dll 파일이 필요합니다.
ado는 버전별로 있기때문에 본인에게 맞는 버전을 사용하면 됩니다.

import할 파일은 C:\Program Files\Common Files\System\ado\ 에 있습니다.
MFC를 이용해서 프로그래밍을 한다면 StdAfx.h에 선언해 주는게  편합니다.
StdAfx.h에 선언하지 않으면 사용하는 곳마다 계속 선언을 해줘야 합니다.

//StdAfx.h
//...
#import "C:\\Program Files\\Common Files\\System\\ado\\msado26.tlb" \
        no_namespace rename("EOF", "adoEOF")
//...

type library를 임포트 할려면 .tlb라는 파일이 필요한데 ado는 .dll에도 type library가 저장되어 있습니다.
따라서 .tlb, .dll 둘중에 아무거나 임포트 하시면 됩니다.
namespace를 사용하지 않게 옵션을 주어서 코딩시 편하게 할 수 있습니다.
간혹 이름 충돌이 발생할수 있는데 그럴때는 rename_namespace("새로운이름") 옵션으로 이름을 변경해
주시면 됩니다.

rename("EOF", "adoEOF")는 혹 다른곳에서 EOF를 사용함으로 해서 충돌나는 것을 방지해줍니다.
posted by 뚱2