1. 程式人生 > >關於“用VS2010的C++匯入ADO匯入不了,提示無法開啟原始檔msado15.tlh”的問題

關於“用VS2010的C++匯入ADO匯入不了,提示無法開啟原始檔msado15.tlh”的問題

vc++2010中,要使用ado操作資料庫,所以在stdafx.h中引入了ado的dll庫,引入程式碼如下:

#import “C:/Program Files/Common Files/System/ado/msado15.dll” no_namespace rename(“EOF”,”adoEOF”)rename(“BOF”,”adoBOF”)

編譯器提示intelliSense: 無法開啟原始檔 …/Debug/msado15.tlh的錯誤

解決辦法很簡單:

在----- 生成選單--- 重新生成 --- 即可。
原因是:

當編譯器遇到#import語句時,它會為引用元件型別庫中的介面生成包裝類,#import語句實際上相當於執行了API涵LoadTypeLib()。#import語句會在工程可執行程式輸出目錄中產生兩個檔案,分別為*.tlh(型別庫標頭檔案)及*.tli(型別庫實現檔案),它們分別為每一個介面產生智慧指標,併為各種介面方法、列舉型別,CLSID等進行宣告,建立一系列包裝方法。

在沒有經過編譯器編譯之前,檔案還沒有生成,所以,會出現錯誤提示。