[轉] C++ Redistributable Package版本詳解

咱們使用的程序經常都須要C++ Redistributable Package的支持。C++ Redistributable Package有衆多版本,給安裝帶了不便。c++

 

目前(2013-12-04) C++ Redistributable Package的版本:
Microsoft Visual c++ 2005 Redistributable Package(x86)
Microsoft Visual c++ 2005 Redistributable Package(x64)
Microsoft Visual c++ 2005 SP1 Redistributable Package(x86)
Microsoft Visual c++ 2005 SP1 Redistributable Package(x64)
Microsoft Visual c++ 2008 Redistributable Package(x86)
Microsoft Visual c++ 2008 Redistributable Package(x64)
Microsoft Visual c++ 2008 SP1 Redistributable Package(x86)
Microsoft Visual c++ 2008 SP1 Redistributable Package(x64)
Microsoft Visual c++ 2010 Redistributable Package(x86)
Microsoft Visual c++ 2010 Redistributable Package(x64)
Microsoft Visual c++ 2010 SP1Redistributable Package(x86)
Microsoft Visual c++ 2010 SP1 Redistributable Package(x64)
Microsoft Visual c++ 2012 Redistributable Package(x86)
Microsoft Visual c++ 2012 Redistributable Package(x64)
Microsoft Visual c++ Redistributable Package(IA64)
如此多的版本不免讓人困惑。下面經過幾個問題來了解C++ Redistributable Package版本的關係。小程序


問題1:裝c++ 2010能夠替代c++ 2005和c++ 2008嗎?
對於通常的軟件,版本交高的程序能夠替代併兼容版本較低的程序。然而c++則是一個特例。因爲不一樣的版本中包含了不一樣的庫文件,所以c++ 2010不能替代c++ 2005和c++ 2008!服務器

問題2:c++ 200五、c++ 200八、c++ 20十、c++ 2012都裝在一臺電腦上能兼容嗎?
這個問題的答案是明確的——它們能夠互相兼容,不會發生衝突,所以建議你們把它們都安上。工具

問題3:x8六、x64是什麼意思?
其實不少軟件上都有這些數字的分別。其中x86表明32位系統,x64表明64位系統。因爲64位的系統能夠兼容32位的程序,所以x86版本的文件能夠裝在32位和64位系統上,而x64版本的文件只能裝在64位的Windows操做系統上。網站

問題4:我 的系統是64位的操做系統,所以我就只要裝x64的文件?
錯!雖然從理論上來講應該裝x64版本,但咱們必需要考慮實際狀況。截止目前以及能夠預見的將來 幾年,咱們所使用的遊戲、破解補丁、從網上下載的小程序,它們都是在32位的環境下開發的。也就是說,開發者或遊戲公司在開發這些程序的時候都是調用了 32位的庫文件。所以,若是咱們想在咱們本身的電腦上運行這些程序的時候,不論是32位系統仍是64位系統,都務必至少要安裝x86(32位)的文件。常常有人裝了c++後還運行不了某些程序,就是由於他的64位系統只裝了64位的文件。這一點特別有迷惑性,但願初級玩家們特別重視。固然,對於那些使用了maya、3ds max等工業軟件的用戶,x8六、x64在64位系統上都是要安裝的。spa

問題5:c++ 2005和c++ 2005 SP1它們之間的關係是怎樣的?
其實它們本質上都是服務於c++ 2005開發的程序,它們之間只是版本號不一樣,能夠把c++ 2005 SP1當作是c++ 2005的更新版。所以若是你的電腦以前裝有c++ 2005,再安裝c++ 2005 SP1時會覆蓋c++ 2005。不過不用擔憂,有了c++ 2005 SP1後,須要c++ 2005和須要c++ 2005 SP1的程序都能運行。所以除非特殊須要,建議你們安裝c++ 2005 SP1便可,不用再裝c++ 2005了。c++ 2008與c++ 2008 SP1的關係與c++ 2005相似,不在贅述。操作系統

問題6:一個程序只要0五、0八、10中的某一個便可?
不必定。一個跨代開發的程序徹底可能既須要c++ 2005,又須要c++ 2008。所以仍是那句話,鑑於文件都不是很大,建議把0五、0八、十、12都裝上。.net

問題7:網 上說某個程序須要c++ 2008,但是我裝了仍是不能用呀?
C++不只有大版本之分(如200五、200八、20十、2012),還有版本號之分。也就是說,一樣都是一個 c++ 2008,因爲它們的版本號不一樣,它們之間包含的文件也有微小的差異。若是你的程序剛好須要這個有微小差異的文件,那麼你的程序就沒法啓動。在這一點上, 微軟的中文網站給廣大的中文用戶製造了一個不小的陷阱。好比在微軟中國上提供的最新版本的c++ 2008 SP1的版本號是9.0.30729.01,而實際上已經有了版本號爲9.0.30729.6163的文件。差異仍是不小,所以形成了有不少人說我從微軟 網站上下載都不行。請你們記住,微軟網站(尤爲是微軟的中文網站)上不必定提供的是最新版本。好比最近很火的憤怒的小鳥(AngryBirds)須要 c++ 2005 SP1和c++ 2008 SP1,但從微軟網站上下載者兩個文件後問題依舊,其根本緣由就是微軟提供的不是最新的文件翻譯

問題8:爲 什麼c++ 2005裝不了,老是提示「Command line option syntax error. Type Command /? for Help.」?
這個問題很廣泛,其實仍是微軟本身的BUG形成的。3d

問題9:上面列舉的最後一個文件中的IA是什麼意思?
IA翻譯成中文是「安騰」,這是一種專門用在服務器上的處理器。因爲該處理器包含了特殊的CPU指令集,所以須要專用的文件。來看本文的人99.999%用不到這個文件,能夠忽略。

總結:說 了這麼多,總結一下就是,無論你是32位仍是64位操做系統,都至少要安裝最新版本的c++ 2005 SP1 Redistributable Package(x86)、c++ 2008 SP1 Redistributable Package(x86)、c++ 2010 SP1 Redistributable Package(x86)、c++ 2012 Redistributable Package(x86)這四個文件,對於須要使用工業軟件的用戶,則還需額外安裝64位的文件。

我想你們可能會以爲怎麼須要安裝這麼多文件啊?一個一個下載而後再安裝太麻煩了,有沒有簡單點的辦法?固然有,這裏我要推薦你們使用DirectX修復工具加強版。 DirectX修復工具原本是修復DirectX的,可是其中的加強版包含了本文中列出的全部須要安裝的c++版本(只有DirectX修復工具V3.0 及以上版本包含c++ 2012)。下載後只要點一個按鈕,就能完成全部的安裝操做,簡便易行。同時,使用DirectX修復工具還能順便解決你係統中的不少其餘問題(好比 0xc000007b問題),所以極力推薦你們使用。
DirectX加強版地址:http://blog.csdn.net/vbcom/article/details/7245186

相關文章
相關標籤/搜索