WTL全稱為Window Template Library,一個構(gòu)架于ATL之上的C++類庫,它包裝了大多數(shù)的窗口控制.從網(wǎng)上看的,也只是個大概的了解.先安裝了弄個Hello World試試吧,呵呵
1,安裝
?? 1.1 下個WTL安裝包,其實上個壓縮包.現(xiàn)在最新的是8.0版,默認解壓目錄為C:\WTL80,其中80為版本號,如果下的是7.5則為C:\WTL75
?? 1.2 自動安裝
?? 在目錄C:\WTL80\AppWiz有四個JS文件,選擇一個你機子上安裝的VC版本,點擊相應(yīng)的JS腳本進行安裝即可,如VS2005的VC版本為8.0,則相應(yīng)文件為setup80.js
?? 1.3 手動安裝
?? 自動安裝有時安裝不成功,如點擊文件后卻打開了一個記事本,其實手動安裝也挺不錯的.
?? 將C:\WTL80\AppWiz\Files目錄下的三個WTLAppWiz.*文件考到VC安裝目錄的vcprojects目錄下,如E:\Program Files\Microsoft Visual Studio 8\VC\vcprojects, 打開WTLAppWiz.vsz,原文件為:
?? VSWIZARD 7.0
?? Wizard=VsWizard.VsWizardEngine
?? Param="WIZARD_NAME = WTLAppWiz"
?? Param="WIZARD_VERSION = 7.0"
?? Param="ABSOLUTE_PATH = ."
?? Param="FALLBACK_LCID = 1033"
?? 將其改為
?? VSWIZARD 7.0
?? Wizard=VsWizard.VsWizardEngine.8.0
?? Param="WIZARD_NAME = WTLAppWiz"
?? Param="WIZARD_VERSION = 7.0"
?? Param="ABSOLUTE_PATH = C:\WTL80\AppWiz\Files"
?? Param="FALLBACK_LCID = 1033"
?? 其中Wizard后面需加上WTL的版本號,否則能在VC里看到WTL項目,但其向?qū)o法工作
?? Param ="ABSOLUTE_PATH后加上WTL解壓的路徑
?? 新將項目時選擇WTL項目,接默認選項生成項目,編譯時會報'atlapp.h': No such file or directory錯誤。需要加一個編譯路徑,工具-->選項-->項目和解決方案-->VC目錄,在左邊選擇包含文件,把WTL解壓目錄下的C:\WTL80\include路徑加上
?? 如果編譯時報以下兩個Bug:
?? 錯誤 1 fatal error CVT1100: 重復(fù)的資源。type:MANIFEST, name:1, language:0x0409 CVTRES
?? 錯誤 2 fatal error LNK1123: 轉(zhuǎn)換到 COFF 期間失敗: 文件無效或損壞 sdf
??? 則說明資源文件有問題,具體的原因未知,從網(wǎng)上找我資料看,有以下四種解決方法:
?? 1,工程屬性->配置屬性-> 清單工具->輸入和輸出->嵌入清單,選擇[否]
??? 2,打開rc文件,找MANIFEST,所屬段或行全去掉
?? 3,打開此項目屬性頁,鏈接器-->嵌入的 IDL-->類型庫資源 ID 設(shè)一個從1-65535的值
?? 4,項目屬性頁鏈接器-->清單 文件-->生成清單文件 選項設(shè)置為no