這里使用的是VC2008編譯exe,其中要鏈接VC2005編譯的靜態庫,編譯,鏈接都無問題。運行后出現無法找到Manifest問題。按照傳統,查看用戶機是否使用FAT32格式分區,勾選解決FAT32選項依然無效。屏蔽新鏈接庫,運行又正常,所以問題出現在靜態庫本身。但是靜態庫編譯時無法關閉和控制Manifest。
Google之,找到這樣一篇文章
http://connect.microsoft.com/VisualStudio/feedback/details/362837/migrating-from-microsoft-vc80-crt-manifest-to-microsoft-vc90-crt-manifest
突然想到,靜態庫編譯器與exe編譯器不統一,馬上重新使用2008編譯靜態庫,問題解決
總結:
VC6時期沒有Manifest,那個時候編譯出的lib都可以給現在的編譯器用,2003也勉強,但是2005還沒做完善,2008就是2005的大補丁,所以以后庫用2008編譯都應該沒有問題