文章首發 | 公眾號:lunvey
今日研究c++,找了一些示例程式,發現無法開啟。彈出如下的報錯提示:
作為新時代人類,遇見問題第一件事情就是問度娘。然而眼花繚亂的檢索資料,大家眾說紛紜,不知道如何是好。
有人說,下載這個dll檔案,然後替換一下,接著註冊就行;也有人說這個是微軟執行庫,需要安裝對應的vc++執行庫。作為一個新手來說,我懵了。
抱著刨根問底的態度來做學問,我先研究了一下這個MSVCP100D.dll是何方神聖。
既然vc++庫是微軟官方的,自然從官方文件尋找答案。
不難發現,我們今天的主角MSVCP100D.dll只是C++標準庫MSVCPRT.LIB的多執行緒動態連結中的實現檔案。至於後面的數字只是代表了不同版本而已。
按圖索驥,發現MSVCP100D.dll對應的vc++庫是vc++2010。話不多說,直接下載安裝,這裡貼一下連結,有需要的朋友可以少走彎路。
32位下載地址
http://www.microsoft.com/en-in/download/details.aspx?id=5555
64位下載地址
http://www.microsoft.com/en-us/download/details.aspx?id=14632
值得一提的是,下載的時候一定要選擇和Windows系統匹配的語言版本,這裡我選擇的中文。
由於我使用的是64位版本,這裡安裝完成測試一下。發現依然無效,繼續報錯。不得不明白一個道理,這個32位和64位並不是針對我們的電腦環境,而是開發的環境。鑑於此,希望大家同時安裝,這樣就能匹配不同開發環境的vc++2010依賴。
當我按照以上操作之後,既然報錯,檢視Windows目錄發現確實沒有MSVCR100D.dll,只有MSVCR100.dll。難怪報錯,那麼加了D的dll檔案代表什麼意思呢?為什麼會沒有呢?
d是指的Debug,而我們安裝的是發行版。裡面預設沒有這個dll檔案,那麼此時我們需要去單獨下載這個檔案,然後複製到Windows下的SysWOW64目錄即可。
安裝完成以後,切記這個MSVCP100D.dll只能在win7下使用。大家記得使用相容模式執行。
至此,大功告成!
記錄此文,學習路上,和大家共勉,如果能幫到你,記得點贊哦~