您目前已離線,請等候您的網際網路重新連線

不支援您的瀏覽器

您必須更新瀏覽器,才能使用此網站。

更新至最新版本的 Internet Explorer

重新發佈共用的 C 執行階段元件,Visual C++ 中的

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:326922
結論
當您建置應用程式在 Microsoft Visual Studio 應用程式使用 C Run-Time 程式庫 (CRT) 散發適當的 CRT DLL,從下列清單與您的應用程式:
  • Microsoft Visual C++ 2008年的 Msvcr90.dll
  • Microsoft Visual C++ 2005年的 Msvcr80.dll
  • Microsoft Visual C++.NET 2003 與 Microsoft.NET Framework 1.1 的 Msvcr71.dll
  • Microsoft Visual C++.NET 2002 與 Microsoft.NET Framework 1.0 的 Msvcr70.dll
針對 Msvcr70.dll 或 Msvcr71.dll,您應安裝 CRT DLL 到您的應用程式的程式檔案目錄。 您不應將這些檔案安裝到 Windows 系統目錄。對於 Msvcr80.dll 和 Msvcr90.dll,您應該安裝 CRT 做為 Windows-並存組件。
其他相關資訊
作為共用的系統元件在過去,已被共用的 CRT DLL 散發由 Microsoft。當您執行連結至 CRT 並沒有安裝的 CRT DLL 的正確版本的電腦上的不同版本的應用程式時,這可能會造成問題。這通常稱為 「 DLL 衝突 」 問題。

若要解決這個問題,CRT DLL 不再被視為系統檔因此、 散佈 CRT DLL 與任何依賴它的應用程式。因為它不再是系統元件,會將其安裝在您的應用程式程式檔案目錄與其他應用程式特定程式碼。這可防止您從使用 CRT 程式庫可能安裝在系統路徑上的其他版本的應用程式。

Visual C++.NET 2003年或 Visual C++.NET 2002年安裝 CRT DLL 中 [System32 目錄開發系統上。這被安裝為方便開發人員。否則,所有專案建置以 Visual C++ 的連結與共用的 CRT 都需要建置目錄中 DLL 的複本偵錯和執行。Visual C++ 2005年和 Visual C++ 2008年安裝 Windows XP 和更新版本的作業系統上的 Windows 藉由從並存組件 CRT DLL。 Windows 2000 不支援-並存組件。在 Windows 2000 上 CRT DLL 被安裝在 System32 目錄中。

當您散發需要 CRT DLL 中的共用 CRT 程式庫的應用程式時,我們建議您使用直接散發 DLL 檔案的 Visual C++ 包含,則 [CRT.msm 合併模組。

Windows 藉由從並存組件

與 Visual C++ 2005年和 Visual C++ 2008 Msvcr90.dll Msvcr80.dll 是做為組 Windows-並存件除了在 Windows 2000 上重新分散。您應該在目標電腦上安裝這些版本的 CRT,藉由執行隨附於 Visual Studio Vcredist_x86.exe 應用程式。另外還有在 x64 和 IA-64 平台的安裝程式。或者,您可以使用 Visual Studio 使用 CRT MSM 合併模組所提供,CRT 安裝程式封裝放入安裝應用程式。如此可讓 CRT 可用的所有應用程式共用組件,因為它安裝在受支援的作業系統上 \windows\winsxs 目錄中。
参考
如需詳細資訊請造訪下列 Microsoft 開發人員網路 (MSDN) 網站]:如需有關 Windows 的詳細資訊-並存組件請造訪下列 Microsoft 開發 o 人 h 員 û 工 u 具 ã 網路 (MSDN) 網站:
DLL Hell

Warning: This article has been translated automatically

內容

文章識別碼:326922 - 最後檢閱時間:03/19/2008 23:15:38 - 修訂: 5.0

  • Microsoft Visual C++ 2008 Express Edition
  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • kbmt kbinfo KB326922 KbMtzh
意見反應
com/ms.js">