새로 MS OFFICE 2013 버전을 설치하고 기존 ADO, OLEDB 관련해서 엑셀파일 불러오던 것이
오류가 발생하였습니다.
새 버전에서 OLEDB 모듈이 빠졌는지 MS 고객센터에 문의해 보았는데 예상대로 빠졌네요
고객센터 답변내용
-------------------------------------------------------------------------------------------------
새로 출시된 Office 365는 최신버전은 Office 2013을 기반으로 설치됩니다.
Office 2013은 Click 2 Run의 형태인 실시간 다운로드 설치방식으로 변경되어 OLEDB를 별도로 설치해야 합니다.
Office 2013에서 이전 버전과 다른 형태의 Click 2 Run 방식으로 인해 OLEDB를 별도로 설치해야만 정상이용을 하실 수 있습니다.
이에 대한 기술문서를 아래 링크를 통해 확인하실 수 있으니 이용에 참고하여 주시기 바랍니다.
-----------------------------------------------------------------------------------------------
해결방법은 AccessDatabaseEngine 을 별도 설치하면 됩니다.
https://support.microsoft.com/en-us/kb/2874601
http://www.microsoft.com/ko-kr/download/details.aspx?id=13255
엑셀파일을 불러올때 ADO(OLEDB)를 연결하는 것이 OLE Object 이용하는 것 보다 훨씬 빠르므로
자료가 많을 때는 큰 차이가 발생합니다.
또한 엑셀이 설치되어 있지 않아도 위의 AccessDatabaseEngine.exe (오피스 2010) 설치하면 OLEDB 기능을
이용할 수 있습니다.
참고로 ADODB 유닛의 GetProviderNames 메소드 사용하면 현재 PC의 OLEDB 공급자( ProviderName )
정보를 확인할 수 있습니다.
예를 들어
procedure TForm1.Button1Click(Sender: TObject);
begin
GetProviderNames(ListBox1.Items);
end;
'델파이' 카테고리의 다른 글
델파이 IDE UPX(실행파일압축) 설정하기 (0) | 2015.10.06 |
---|---|
델파이2007 설치후 외부 콤포넌트 라이브러리 설치(JVCL, CPort, 퀵리포트, Indy) (0) | 2015.10.03 |
델파이xe에서 TImage 의 gif 포맷 TGIFImage에서 TJvGIFImage 으로 변경됨 (0) | 2015.08.03 |
ScrollBar 윈도우메시지 TWMVScroll 한계 극복 GetScrollInfo , TMemo 스크롤바 이동 (0) | 2015.06.10 |
델파이 배열 상수 사용법, 로컬 디렉토리에서 특정경로의 상위폴더 얻기 (0) | 2015.06.05 |