簡體   English   中英

Visual Studio 2008 是否支持 Windows 98?

[英]Does Visual Studio 2008 support Windows 98?

我們正在考慮從 Visual Studio 2005 升級到 Visual Studio 2008。我發現了以下令人不安的評論。

更新 WINVER 和 _WIN32_WINNT

從 Visual C++ 2008 開始,Visual C++ 不支持定位 Windows 95、Windows 98、Windows ME 或 Windows NT。

這是否意味着如果我們用 Microsoft Visual C++ 2008 重建我們的產品,它們將停止在 Windows 98 機器上工作? 聽起來像,但我很難相信他們會做出這么大的改變。

它不僅僅是關於.NET 3.5。 它是關於Windows SDK頭文件宏和WINVER中強制版本凸點引入的定義。 所以是的,Colen,Visual C ++ 2008二進制文件只會針對Windows NT API而有時它們可​​能在98上工作,你應該假設你不能使用Visual Studio 2008來定位Win9x。 您將不得不使用VS2005或更早版本。

是的,它確實意味着:Windows 2000之前的Windows CreateProcess和LoadLibrary API以及所有Windows(95,98 AND ME)都不會加載由VS9生成的DLL或EXE文件,因為文件中的PE頭具有所需的操作系統版本字段設置為5。

嘗試加載VS9生成的exe文件時的錯誤消息(將是一個非常不友好的模式錯誤對話框)實際上說“你需要升級你的操作系統來運行這個程序”。

我嘗試將字段編輯為4 - 將加載二進制文件,但任何使用VS9 c-runtime都會掛起或崩潰進程。 有很多方法可以讓VS9項目不使用他們的原生c-runtimes,但如果大量使用c ++功能對你來說很重要,那么這種方法不會擴展到小型應用程序。

VS8 / VS2005具有VS9的大部分功能,但仍然針對早期操作​​系統版本,這就是為什么在我的商店我們暫時堅持使用它。

很自然,他們不會在新產品上支持舊版本的操作系統。 它會花費更多(不僅僅是貨幣成本,而且更難或不可能提供一些新的有用功能)來使事情與舊系統的局限性(通常是錯誤)一起工作。 這種情況一直發生在每個人身上; 新版本的gcc drop支持較舊的不太流行的架構; 新版本的glibc需要更新的最新內核版本; 等等。

這些操作系統早已退役; 從微軟的角度來看,沒有人應該再使用它們了。 如果您仍想為它們開發,您可以使用相同年份的舊工具。

根據以下鏈接,.NET 3.5不支持Windows 98,所以我想這就是他們的意思。 您仍然可以執行.NET 2.0並降低開發速度,但如果使用3.5庫,則不支持Windows 98。

.NET 3.5信息

此框架上的3.5 Framework甚至不會安裝在Windows 2000 Server上。 所以我不相信他們會在95,98或NT上。 微軟不再希望有責任支持這些已退役的操作系統。

我建議您以此為契機停止支持Windows 9x。 這是一個很好的理由。 而且,至少如果您正在為Win32 API編寫C / C ++代碼,如果您可以假設目標操作系統是Windows 2000或更高版本,那么生活會容易。

雖然我同意JesperE,但Windows 98只占用戶的一小部分,因此定位它們毫無意義,除非您知道很大一部分客戶實際上使用的是Windows98。

在任何情況下,您實際上可以在Visual Studio 2008中定位Windows 98(您無法在Windows 98上開發)。 但是,您必須僅在.NET 2.0上定位項目,不能使用任何3.0或3.5功能。

據我了解,使用最新的KernelEx ,所有針對 XP 的 MSVC 版本都可能工作(結果取決於您隨后決定使用多少“最新”功能/特性)

關於 2008 年的答案,甚至在那時也有相當多的補丁庫(如果它們被破壞,請檢查Wayback Machine上的鏈接)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM