Windows Embedded Compact（曾被稱為 Microsoft Windows CE），為微軟研發的嵌入式作業系統，可以應用在各種嵌入式系統，或是硬體規格較低的電腦系統（例如很少的記憶體，較慢的中央處理器等）。微軟並未定義 CE 縮寫由來，一般解釋則有 Compact Edition、Customer Embedded、Consumer Electronics 等等。在 2008 年 4 月 15 日舉行的嵌入式系統大會上，微軟宣佈將 Windows CE 更名為 Windows Embedded Compact，與 Windows Embedded Enterprise、Windows Embedded Standard 和 Windows Embedded POSReady 組成 Windows Embedded 系列產品。 概覽 Windows CE 10 最早於 1996 年推出，是單色的 Windows 95 簡化版本。 1997 年 Fall Comdex 大會上公佈的 Windows CE 20 仍是基於 Win95 的作業系統，效率遠高於 10 版。 Windows CE 30 是微軟的 Windows Compact Edition，已擺脫舊有的 Windows 95 簡化格式，是一套全新的作業系統，支援 5 種 CPU：x86、PowerPC、ARM、MIPS、SH34。並且改名為 Windows for Pocket PC，簡稱 Pocket PC。 2002 年 1 月微軟又推出 Windows CENet，即 Windows CE 40。 2004 年 5 月份推出 Windows CE 50，開放有 250 萬行原始碼。 2006 年 11 月，微軟推出 Windows Embedded CE 60。 2010 年 10 月，微軟推出 Windows Phone 7，Windows Embedded Compact 7。 Windows CE 可以使用在各式各樣的系統上，最有名的是 Pocket PC 以及微軟的 SmartPhone。其他較不為人知的裝置包括微軟的車載電腦、機頂盒、生產線上的控制裝置、公共場所的資訊站（Kiosk）、電子辭典及導航儀等等，有些裝置甚至沒有任何人機介面。 Windows CE 並非從桌上型電腦的 Windows（NT，98，XP）修改縮小而來，而是使用一套完全重新設計的核心，所以它可以在功能非常有限的硬體上執行。雖然核心不同，但是它卻提供了高度的 Win32 API 軟體開發介面的相容性，功能有記憶體管理、檔案操作、多執行緒、網路功能等。因此，開發桌上型電腦軟體的人可以很容易編寫甚或直接移植軟體到 Windows CE 上。 一個與其他微軟作業系統的差異是 Windows CE 提供原始碼，首先已經提供了原始碼給部分廠商，讓廠商能夠依照他們自己的硬體架構修改原始碼， 例如在 Windows CE 的開發 IDE 軟體 Platform Builder 中就提供了許多開放原碼的常用軟體元件，但是一些與硬體架構的軟體元件仍然以二進位制檔案形式來提供。 版本 版本 改動 10 釋出於 1996 年 11 月 MSCE1。 090517 2000gradcom 代號 Pegasus。 090517 blogsmsdncom 使用該 OS 的裝置被命名為「handheld PC」〈HPC〉。 20 釋出於 1997 年 9 月 MSCE2。代號 MercuryGryphonApolloAlderAlder EPBirchBirch SP2JupiterWyvernGoldeneye。 以 Palmsized PCPocket PC 為名的裝置出現。 即時排程演演算法。 支援系統架構：ARM，MIPS，PowerPC，StrongARM，SuperH 及 x86。 32bit 彩色螢幕。 SSL 20 及 SSL 30。 30 釋出於 2000 年六月 MSCE3。代號 Cedar。 針對核心進行重寫使 CE 的即時性推進至微秒層級。TalkMicrosoft Windows CEIs Windows CE a trimmed down version of desktop Windows 090517 Pocket PC 2000，Pocket PC 2002 及 Smartphone 2002 的基礎。 優先順序數從 8 增加至 256。 系統物件數從 65 536 增加至 4 億 1900 多萬。 使用特殊的 APIs 對系統進行存取，對登入檔的寫操作也被限制在部分割槽域。 4x 釋出於 2002 年 1 月。MSCE4。代號 TaliskerJamesonMcKendric。 更改部份驅動結構並增加新功能。 以 Pocket PC 2003 為基礎。 提供藍牙支援。 090517 pencomputingcom 支援 TLS（SSL 31），IPsec L2TP VPN、Kerberos。 50 釋出於 2004 年 8 月。新增了許多功能。代號 Macallan 自動向生產商傳送錯誤報告。 090517 theregistercouk 移動式 Direct3D，一個基於 COM 的 Windows XP DirectX 多媒體 API 版本。 2D 圖形 DirectDraw 和攝像頭與影片的 DirectShow 數字化支援。 支援 Remote Desktop Protocol（RDP）。 090517 seditavillecom 6x 釋出於 2006 年 9 月。代號 Yamazaki 程序地址空間從 32 MB 增加至 1 GB 程序數目從 32 增加至 768 090517 embeddednetnz 可以使用使用者模式和核心模式的裝置驅動。 Deviceexe filesysexe GWESexe 被轉移至核心模式中。 SetKMode and set process permissions not possible 增強系統呼叫的效能。 090517 windowsfordevicescom 7x 70 釋出於 2010 年 10 月。75 釋出於 2011 年 9 月 詳見 Windows Phone 7 雙核心處理器支援（SMP、ARMv6） WIFI 定位系統 藍牙 30 HS Cellcore DLNA（數位生活網路聯盟） 數位版權管理 媒體傳輸協議 IE8 Rendering Rich Media PlugIns NDIS 61 支援 UX C XAML API 如使如 Windows Presentation Foundation 和 Silverlight 的使用者介面 更佳觸控和手勢輸入 CE v30 是 Pocket PC 2002 的基礎 CE v30 的下代為 CEnet PocketPC 是 核心 Windows CE OS 上的一整層程式 Pocket PC 以 Windows CE 為基礎，但分發的方式不太一樣 Pocket PC 的使用證書禁止修改 WinCE 的程式 090517 theregistercouk 功能 停產前最新的 Windows CE 為 Windows CE 70，這個版本在核心部分支援： 雙核心處理器支援（SMP、ARMv6） WIFI 定位系統 藍牙 30 HS Cellcore DLNA（數位生活網路聯盟） 數位版權管理（DRM） 媒體傳輸協議（MTP） IE8 Rendering Rich Media PlugIns NDIS 61 支援 UX C XAML API 如使如 Windows Presentation Foundation 和 Silverlight 的使用者介面 更佳觸控和手勢輸入 在開發環境上，微軟也提供相容於NET Framework 的開發元件：NET Compact Framework，讓正在學習NET 或已擁有NET 程式開發技術的開發人員能迅速而順利的在搭載 Windows CE NET 系統的裝置上開發應用程式。 用於掌上電腦 Pocket PC 以及智慧手機 Smart Phone 上的 Windows CE 系統稱為 Windows Mobile，目前成熟的最新版本為 Windows 10 Mobile。 在 2009 年 10 月 6 日，Windows Mobile 亦正式改名為 Windows Phone 開發工具 Windows CE 可支援 MFC，ATL，STL，COM，ActiveX，以及NET Compact Framework。開發工作可以分為： Platform Builder 這個工具是一個編譯平臺（BSP 作業系統核心）、驅動程式以及應用程式，是一個可以做單部執行的開發環境，也可以用來傳送 SDK 到目標平臺再搭配另外一個下面的工具來使用。 Free Pascal and Lazarus 版本 220 以後的 Free Pascal 都有 Windows CE 支援（包括 ARM 和 x86）。隨後，Windows CE 標頭檔案也被翻譯，供 Lazarus（一個基於 Free Pascal 的快速應用開發（RAD）軟體包）使用。使用者可以使用 Lazarus IDE 來設計 Windows CE 應用程式，並透過交叉編譯器（crosscompiler）生成用於 Windows CE 的可執行檔案。 Embedded Visual C（eVC）這是一個用於開發基於 Windows CE 作業系統嵌入式應用程式的工具，這個工具可以使用由 Platform Builder 輸出的 SDK。 Visual C 200520082010 其中 Platform Builder 60 for Windows Embedded CE 被改寫成 Visual Studio 2005 的一個外掛。 限制 Windows CE 為 UNICODE 作業系統，但 char 不必改為 TCHAR，WCHAR，因為 Windows CE 也支援非 Unicode 程式設計。 Windows CE 不支援重疊 IO。 WinCE 的許多 APIs 功能都受限，如 CreateThread 函式在許多引數在 Windows CE 下都不支援，第 1、2、5 的引數值必須設為 NULL 或 0。 HThread CreateThread（NULL 0 Thread nParameter 0 dwThreadID 參見 微軟作業系統列表 參考文獻 CategoryWindows CE Category 即時作業系統 CategoryARM 作業系統