2013-11-23 60 views

回答

2
  • 動態:動態鏈接運行,這意味着你的編譯後的文件會更小,但需要安裝微軟的Visual C++運行時文件。根據目標系統的Windows版本以及正在安裝的其他程序(以及您正在使用的VS的版本),可能已經安裝了這些版本,但您永遠無法確定,因此您至少需要提供一個下載鏈接,以防您的程序無法運行。
  • 靜態:靜態鏈接運行時,這意味着使用的部件包含在您的編譯文件中。這會導致稍大的文件(取決於您使用的CRT的多少部分),並且您的代碼可能會稍微快一點。您不需要目標系統上存在運行時文件。

哪一個可以選擇?由你決定。

  • 如果你提供的是將依賴的核心(如CRT)的安裝,使用動態版本可能是更好的選擇,特別是當你使用多個二進制文件(如可執行文件和庫)。否則,你可能基本上會得到重複的代碼。

  • 爲了更好的「解壓縮和運行」體驗,我寧願使用靜態運行時。

  • 您還可以使用動態運行時並提供一個小型「引導程序」程序,與靜態運行時間鏈接並檢查運行時是否已正確安裝。如果不是,它會在運行實際程序之前下載並安裝它。