用vc2010寫dll,傳遞stl,bcb6使用沒問題,但是bcb2007卻有問題,原因是stl版本不同,由于bcb6是stlport,是以也給bcb2007安裝。
網上找了很多方法,最新的stlport已經不支援bcb。不提供直接的編譯。
用了個笨方法。
1.用vc6.0編譯stlport(也可以從網上直接下載下傳編譯好的,我下的是vc6.0編譯好的庫)。
2.使用bcb的implib工具将lib檔案夾中的dll生成對應的lib。
3.同其他工具配置stlport一樣,include和library路徑中增加對應的頭和lib檔案夾(lib檔案夾中的是剛才生成的lib和dll)。
4.最後還要做一個設定,%STLPort%\stlport\stl\config\user_config.h檔案裡面有個“#define _STLP_NO_IOSTREAMS 1”被注釋掉了,取消注釋。就算完成了。
我用的就是stlport5.2.1。現在已經可以使用vc2010寫的傳遞stl的dll了。