Windows伺服器和普通桌面Windows之間的技術差異是什麼

Windows伺服器和普通桌面Windows之間的技術差異是什麼

我想了解有關 Windows 伺服器和常規桌面 Windows 之間差異的技術細節。特別是 Windows 10 和 Server 2008。

我正在嘗試解決我的一個應用程式中的問題,該應用程式在我們的電腦上運行得很好,但在我們客戶端的伺服器上崩潰了。我完全困惑為什麼會發生這種情況,並正在尋找一些線索。

答案1

正如@Rudolph 中所提到的艾里爾評論,您需要更加具體,以便我們有很好的機會解決問題。諸如錯誤訊息或程式碼、記錄的事件,甚至是我們在這裡討論的應用程式類型的一般概念...

不過,我可以概述「常規」Windows(用戶端)和 Windows Server 之間可能影響相容性的一些差異。

  • IE增強保護模式使 IE 更加安全,但意味著需要使用 IE 載入網頁(可能包括嵌入式 IE 框架)的應用程式可能無法運作,因為 EPM 禁用了許多功能以最大限度地減少攻擊面。
  • 預設情況下,「桌面」元件(如 Windows Media Player)未安裝在伺服器上。可以安裝它們,但伺服器上通常不需要它們。
  • 32 位元版本。雖然Win10 仍然可以在32 位元平台上使用,但Windows Server 不再可以使用(儘管我認為Server 2008 - 初始版本,而不是R2,它實際上是一個顯著不同的版本- 是最後一個具有32 位元版本的版本)。實際上,這應該不重要,但如果由於某種原因您的應用程式無法在 64 位元版本的 Windows 上運行(例如,它需要加載 32 位元驅動程式或運行 16 位元程序,或者它對檔案系統和註冊表佈局做出了不明智的假設)那麼這可能是一個問題。但是,如果它在 64 位元 Win10 上運行,則它應該在 64 位元伺服器上運行。

當然,還有另一個區別:簡單的發布版本。 Win10是全新的,運行在NT10.0核心上,支援所有最新的API。 Server 2008 已經有七年了,大約是在 Vista SP1 發布的時候發布的;它運行在 NT 6.0 核心上,現在已經過時了四個版本。雖然在 6.0 和 10.0 之間的任何給定版本中添加的 API 相對較少(中間版本是 6.1、6.2 和 6.3,只是為了混淆),但它們確實有所增加。如果您的應用程式沒有專門針對 6.0,則它可能使用該版本中不存在的 API。

您是否測試過您的應用程式是否在 Vista 上執行(或者,如果客戶端實際上執行 Server 2008 R2,則在 Win7 上測試了該應用程式)?

相關內容