添加了泛型和匿名方法等若干新特性的內部實現細節;編譯工具已改為使用Visual Studio 2005。移植性方面基本跟1.0一樣,現成的代碼只支持WinXP SP2下編譯,如果需要在FreeBSD、Linux下編譯,仍需修改相關的pal代碼。
立馬在英文版WinXP Pro(外加中文多語言包, non-Unicode程式的默認語言選擇的是Chinese PRC)下編譯了一回,發現nmake報了兩個錯:“clr\src\vm目錄下的threads.cpp與win32threadpool.cpp兩個檔案包含有當前代碼頁(codepage 936)無法解析的字元”,直接把它們另外儲存為unicode或utf-8編碼,再次make,一切Ok。
後來又在簡體中文版XP下試了一回,令人驚訝的是,第一次編譯時甚至連env.bat中的環境變數建立和編譯環境檢測的過程都通不過,初步斷定還是跟XP語言設定有關係(可能是ActivePerl導致的,沒細看),直接將non-Unicode程式的默認語言設成English,重啟,編譯通過。
再次更新:發現了一個更簡單的辦法——右鍵點擊Visual Studio 2005 Command Prompt捷徑,屬性->選項->當前代碼頁,將其設成437(OEM-美國),即可修正編譯時遇到的語言問題;無需重啟,同時適用於XP的任何語言版本。