VS 2008中由於將ALT項目的部分代碼剝離出去成為了獨立的開源項目,需要用到ALT中正則表達式等功能就需要手動下載。
我不是第一個遇到這個問題的,所以已經有前人給出了解決方案。
可到http://atlserver.codeplex.com/該網下載所需要的包,將下載到的文件解壓到工作目錄
第一種解決方案:
vs2008 ->【工具】->【選項】;
右邊列表選擇【項目和解決方案】->【VC++目錄】;
坐上角選擇【包含文件】;
新加入一行,文件路徑就是解壓文件的路徑,如下

這樣就ok了,可以使用正則的強大功能了,比自己一個字符一個字符處理強悍n多。
第二種解決方案:
將解壓出來的include目錄拷貝並覆蓋到VS的安裝目錄下的\VC\atlmfc\include,例如若是VS2008,則位置為:\Microsoft Visual Studio 9.0\VC\atlmfc\includ
使用ATL是出現的常見錯誤
atlrx.h(705) : error C2226: 語法錯誤 : 意外的“ADODB::Error”類型
原因:跳轉標簽Error與工程中其它使用的沖突,如果使用了ADO,可在ADO連接使用代碼中加上
#import "****\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF") ,rename ("Error", "adoErr")
但最好的辦法還是直接把atlrx.h中對應的跳轉標簽直接修改了,只有三處:
……
Error:
pContext->m_Match.szEnd = sz;
……
if (*sz == '\0')
goto Error;
……
case RE_FAIL:
goto Error;
……
把這三個隨便改個名就行了。
