不同版本的Windows操作系統之間應用程序不兼容的主要原因是什麼? Microsoft的一般說明是什麼,以便創建的應用程序保持兼容?不同版本的Windows操作系統之間的Windows應用程序不兼容原因
-3
A
回答
1
這就是知道的向前兼容性和向後兼容性。在Microsoft Windows中,您可以編寫託管(C#,VB等)和本機(C/C++)代碼(不包括非Microsoft技術(如Java))。本地代碼大多使用本地Windows APIs
。如果您使用在較新版本的Windows中引入的API,則您的應用程序將不會是向後兼容,並且不會在較早版本的Windows上運行。請始終檢查所用API的Windows所需最低版本。
我知道沒有解釋爲什麼Windows API可能不是向前兼容。順便說一下,微軟的慣例是,當他們修改API的行爲或接口時,他們保留舊的(可能爲向後兼容性),並添加與舊的名稱相同的新名稱加上Ex
擴展。
在託管的世界中,您使用.NET
框架。爲了解釋.NET
框架版本的兼容性我指的是Microsoft's document:
.NET框架支持向前和向後兼容性。 在.NET Framework的上下文中,向後兼容意味着 使用早期版本的.NET 框架創建的應用程序將在更高版本上運行。相反,轉發 兼容性意味着使用.NET Framework的更高版本 創建的應用程序將運行在較早版本上。
.NET框架爲後向 兼容性提供了高度的支持。例如,使用版本 1.0創建的大多數應用程序都將在版本1.1上運行。 .NET Framework還支持向前兼容性。但是,爲了向前兼容,您可能需要修改應用程序以使應用程序按預期運行。對於向後和向前兼容的 ,對有助於提高安全性,正確性或功能的.NET Framework更改也可能引發兼容性問題。
對於.NET框架的每個版本,Microsoft會爲您提供有關可能會破壞應用程序兼容性的更改的指導。我提一些,你可以很容易地找到休息:
相關問題
- 1. 不同操作系統版本之間的iPhone應用程序兼容性
- 2. Delphi XE 5在Windows 10操作系統上的Windows應用程序兼容性
- 3. Windows Phone 7應用程序與Windows 8操作系統的兼容性
- 4. Android NDK不同操作系統版本的功能兼容性
- 5. Windows Phone 7新Windows Phone 8的應用程序操作系統版本
- 6. 針對不同版本的Windows Phone操作系統
- 7. R在不同的操作系統中閃亮的應用程序兼容性?
- 8. 使快速應用程序與不同的操作系統兼容
- 9. JNI。不同的Android操作系統版本之間的不同的行爲
- 10. Android應用程序在不同版本的Android之間的兼容性
- 11. 不兼容Windows窗體應用程序
- 12. 如何測試我的應用程序在不同國家的Windows操作系統版本上的功能?
- 13. IE8在不同操作系統版本之間的行爲有所不同嗎?
- 14. 多操作系統程序兼容性
- 15. 不同版本的Windows之間是否利用Windows用戶界面API風險不兼容?
- 16. Windows移動應用程序開發Windows 7操作系統
- 17. 在Windows 7操作系統上開發Windows Phone應用程序
- 18. Windows操作系統環境下C++應用程序與Java應用程序之間的進程間通信
- 19. 字體不兼容跨操作系統/不同的機器
- 20. Tomcat 5.5.x版本是否與Windows 2012服務器操作系統兼容?
- 21. 序列號和版本的Windows操作系統上的KVM
- 22. 與原版iPad迷你版不兼容的應用程序
- 23. 不同版本之間的Android編程和兼容
- 24. 如何在多個操作系統版本上測試Windows應用程序
- 25. 聲吶與Windows操作系統的兼容性
- 26. 適用於Windows 8操作系統的應用程序<Win8
- 27. 如何強制關閉的Windows Phone應用程序,如果版本不兼容
- 28. 爲Windows Phone 8操作系統和Windows 8創建城域應用程序的圖表操作系統
- 29. 不同瀏覽器之間的應用程序兼容
- 30. 版本之間的應用程序兼容性
艾哈邁德@:感謝您的輸入。 – seccpur
當從16位Windows(即Windows 3.x)遷移到32位Windows(Win9x)時,引入了Windows API的'Ex'版本。這是一次**的一次性交易。這不是一個慣例。通過引入新的參數或版本控制輸入結構,大多數API都以向前兼容的方式進行擴展。但是,您忽略了* API表面,這對於版本控制來說是最靈活的:COM。COM接口一直都在添加,使用COM的代碼既向前又向後兼容。另外,WinRT基於COM。 – IInspectable
@IInspectable你確定它不是一個約定?我們甚至有帶ExEx前綴的API;這在各種書中都有提及。 –