Select an OS Design Template (Compact 2013)
3/26/2014
A design template is a set of predefined catalog items that provide an easy starting point for a Windows Embedded Compact OS design. Using the design template that most closely matches your device requirements can help reduce your overall OS development time.
You are prompted to select a design template on the Design Templates page in the Create an OS Design Wizard. For more information, see Create an OS Design.
Most of the design templates allow you to choose the catalog items that you want to add or remove from your OS design before you complete the OS Design Wizard. After you complete your OS design, you can always add or remove features by using Catalog Items View. For more information, see Modify and Refine an OS Design or Catalog Items View.
The available Windows Embedded Compact design templates are described in the following table and explained in further detail in the sections that follow the table.
Design template |
Description |
---|---|
Quick Start |
Provides a blank OS design without configuring any components during project creation. After the wizard creates your OS design project, you add all features and functionality in Catalog Items View. |
Headless Device |
Provides a starting point for a device that lacks a graphical UI, for example, an embedded device that does not include a display.
Note:
A headless device running the .NET Compact Framework does not include any .dll files that support forms, controls, or drawings.
|
Win32 and WinForms UI Device |
Provides a starting point for an embedded device that can have a UI based on Microsoft Win32 or Windows Forms UI technologies. |
XAML UI Device |
Provides a starting point for an embedded device with a XAML-based UI. |
Custom Device |
Provides a design template that you configure by adding catalog items through the wizard. This template is a starting point for many different devices, from network devices with limited functionality and no display screen to full-featured devices with graphical display screens and rich multimedia playback. |
Tip
By default, all of the design templates set BuildOption:MS:IMGNODEBUGGER when building a retail configuration (Configuration="Retail") so that the kernel debugger is not enabled in the retail image. You can change this setting in OS Design Property Pages by using the Enable Kernel Debugger (IMGNODEBUGGER=) setting. For more information, see Configuration Properties: Build Options.
Note
If you plan to build applications for your OS design and you want debugging and diagnostics support for application building, add the catalog items SYSGEN_APPDEBUG and SYSGEN_REMOTETOOLS to your OS design.
Quick Start
You cannot use this design template to choose anything in the wizard. Instead, this template creates an empty OS design project that you must configure by adding catalog items through Catalog Items View or through the command line. For more information, see Modify and Refine an OS Design or OS Design Command-Line Utilities Tool (Pbxmlutils.exe)
Headless Device
A headless device is a device that has been configured to operate without a physical display or a user input mechanism capable of responding. A headless device OS design is a set of OS component selections that do not generate any standard Windows user interface elements, such as windows, dialog boxes, or message boxes, that could require or block a user action. It is possible that a device with such an OS design could use additional customer-provided components to provide a UI; however, such systems are out of scope for this definition.
The SYSGEN variables shown in the following table are available in the Headless Device design template.
Warning
If you include SYSGEN_APPDBEUG or SYSGEN_REMOTETOOLS to support debugging, your final run-time image will not be headless. Remove these two SYSGEN variables from your OS design before you build the final run-time image that ships with your headless device from your OS.
Catalog item |
SYSGEN variable |
Description |
Set by default? |
---|---|---|---|
.NET Compact Framework |
SYSGEN_NETCF |
Supports developing .NET Compact Framework 3.9 applications. |
Yes |
Component Services (COM and DCOM) |
SYSGEN_OLE, SYSGEN_DCOM |
Supports developing applications that are based on COM and DCOM. |
Yes |
Headless Cabinet (*.cab) File Installer/Uninstaller |
SYSGEN_WCELDCMD |
Provides the command-line cabinet (.cab) file installer (Wceldcmd.exe) and uninstaller (Unldcmd.exe) applications, which perform install or uninstall tasks on a headless device (such as via a Telnet session), or on a headed device (such as via a command prompt). |
No |
Remote Tools Support |
SYSGEN_REMOTETOOLS |
Provides support that allows application developers to use Remote Tools in Visual Studio. |
No |
Application Debugging Support |
SYSGEN_APPDEBUG |
Provides support that allows application developers using Application Builder to debug applications. |
No |
Networking |
|
Provides networking support (via TCP/IP, IP Helper APIs, Ethernet, Winsock, and NDIS). |
Yes |
Networking Security Protocols |
|
Provides networking security protocols, such as the Kerberos protocol, NTLM, and SChannel. |
No |
Wireless LAN (802.11) STA - Automatic Configuration and 802.1x |
SYSGEN_ETH_80211_NWIFI |
Provides the 802.11 native Wi-Fi stack, which creates and manages data connections to wireless networks. |
No |
Network Utilities (ipconfig, ping, route) |
SYSGEN_NETUTILS |
Provides command-line tools that support troubleshooting network connections, including ipconfig, ping, and route. |
No |
Telnet Server |
SYSGEN_TELNETD |
Provides a sample Telnet server that can be installed on a device to allow remote administration through a remote Telnet client. |
No |
FTP Server |
SYSGEN_FTPD |
Provides a sample File Transfer Protocol (FTP) server that allows the copying of files to and from the device. |
No |
DHCP Server |
SYSGEN_DHCPSRV, SYSGEN_SERVICES |
Provides a DHCP Server that you can use in your OS design. |
No |
Automatic DST Adjustment Service |
SYSGEN_SERVICES, SYSGEN_DSTSVC |
Provides updates for daylight saving time (DST) for application or services that use a clock. |
No |
SNTP Client Service |
SYSGEN_SERVICES, SYSGEN_SNTPSVC |
Synchronizes the clock on a Windows Embedded Compact powered device with a time reference available on the Internet. |
No |
Web Server (HTTPD) |
|
Supports web applications, such as applications that configure a device without a display screen by using a web browser on a computer. |
No |
Win32 and WinForms UI Device
This design template creates a full-featured UI device based on Microsoft Win32 or Windows Forms UI technologies.
The SYSGEN variables shown in the following table are available in the Win32 and Windows Forms UI Device design template.
Catalog item |
SYSGEN variable |
Description |
Set by default? |
---|---|---|---|
Minimal Shell |
SYSGEN_MINSHELL |
Adds a minimal shell for with a button and a command prompt. |
Yes |
Minimal Win32 APIs |
SYSGEN_MINWMGR |
Provides the minimal Win32 APIs which supports Windows messaging and Windows management, and includes GDI and Input support. |
Yes |
Common Controls |
SYSGEN_COMMCTRL |
Provides Win32-based common controls for the UI, such as tree views, property sheets, and toolbars. |
Yes |
Common Dialog Support |
SYSGEN_COMMDLG |
Provides common dialog box functionality that you can use to develop dialog boxes for the UI. |
Yes |
.NET Compact Framework 3.9 Windows Forms |
SYSGEN_NETCF_WINFORMS |
Supports developing .NET Compact Framework 3.9 applications, with Windows Forms support. |
Yes |
ATL and MFC Support |
SYSGEN_ATL SYSGEN_MFC |
Supports developing Active Template Library (ATL) and Microsoft Foundation Classes (MFC) applications. |
No |
Component Services (COM and DCOM) |
SYSGEN_OLE, SYSGEN_DCOM |
Supports developing applications that are based on COM and DCOM. |
Yes |
Networking |
|
Provides networking support (via TCP/IP, IP Helper APIs, Ethernet, Winsock, and NDIS), as well as the Wininet API and Firewall feature. |
Yes |
Networking Security Protocols |
|
Provides networking security protocols, such as the Kerberos protocol, NTLM, and SChannel. |
No |
Wireless LAN (802.11) STA - Automatic Configuration and 802.1x |
SYSGEN_ETH_80211_NWIFI |
Provides the 802.11 native Wi-Fi stack, which creates and manages data connections to wireless networks. |
No |
Network Utilities (ipconfig, ping, route) |
SYSGEN_NETUTILS |
Provides command-line tools that support troubleshooting network connections, including ipconfig, ping, and route. |
No |
Warning
If you plan to build applications for your OS design and you want debugging and diagnostics support for application building, include SYSGEN_APPDEBUG and SYSGEN_REMOTETOOLS.
XAML UI Device
This design template creates a full-featured UI device based on XAML UI.
In the XAML UI Device design template, you choose a screen size for the UI. The variables shown in the following table are available.
Catalog item |
Variable |
Description |
---|---|---|
640 x 480 Portrait |
IMG_SCREEN_SMALL |
Provides a screen image size of 640 x 480. Generally, this image size is used for a small screen portable device with a touch-based user interface, such as a portable media device. |
800 x 480 Landscape |
IMG_SCREEN_MEDIUM |
Provides a screen image size of 800 x 480. Generally, this image size is used for a device that may be docked and controlled through touch or 5-button remote, such as a digital picture frame. |
1920 x 1080 Landscape |
IMG_SCREEN_LARGE |
Provides a screen image size of 1920 x 1080. Generally, this image size is used for a device that will always be plugged in and that will be controlled through a 5-button remote, such as a set top box. |
In the XAML UI Device design template, you choose a theme that will be applied to the user interface. The variables shown in the following table are available.
Catalog item |
Variable |
Description |
---|---|---|
Default Theme |
IMG_XRST_THEME_0, SYSGEN_XRSHELL, SYSGEN_DATETIMECPL, SYSGEN_REGIONALCPL |
Provides a default theme appearance for the sample home screen that has a purple gradient background and a list box with application shortcuts. This theme works with all screen sizes. |
Theme 1 |
IMG_XRST_THEME_1, SYSGEN_XRSHELL, SYSGEN_DATETIMECPL, SYSGEN_REGIONALCPL |
Provides Theme 1, which is an appearance for the sample home screen that has a silver background with animated icons that have the appearance of radiation. This theme works with all screen sizes. |
Theme 2 |
IMG_XRST_THEME_2, SYSGEN_XRSHELL, SYSGEN_DATETIMECPL, SYSGEN_REGIONALCPL |
Provides Theme 2, which is an appearance for the sample home screen. If IMG_SCREEN_SMALL is selected, this theme has a blue background and list box with application shortcuts. If IMG_SCREEN_MEDIUM is selected, this theme has an orange background with ambient wave effects. If IMG_SCREEN_LARGE is selected, this theme has a blue gray background with black buttons that are application shortcuts. |
Theme 3 |
IMG_XRST_THEME_3, SYSGEN_XRSHELL, SYSGEN_DATETIMECPL, SYSGEN_REGIONALCPL |
Provides Theme 3, which is an appearance for the sample home screen. If IMG_SCREEN_SMALL is selected, this theme has a purple background and list box with application shortcuts. If IMG_SCREEN_MEDIUM is selected, this theme has a blue background with honeycomb visual effects. If IMG_SCREEN_LARGE is selected, this theme has an orange background with ambient wave effects. |
The SYSGEN variables shown in the following table are available in the XAML UI Device design template.
Catalog item |
SYSGEN variable |
Description |
Set by default? |
---|---|---|---|
XAML for Windows Embedded |
SYSGEN_XAML_RUNTIME |
Provides a native, C++ framework for developing user interfaces based on XAML. |
Yes |
Date Time Settings |
Provides a UI that allows the user to set the time zone, date, and time on the device. |
SYSGNE_DATETIMECPL |
Yes |
Bluetooth Setting |
Provides a XAML for Windows Embedded-based UI for Bluetooth wireless technology settings and pairing. |
SYSGEN_BTN_SETTINGS |
Yes |
Display Settings |
SYSGEN_DISPLAYCPL |
Provides a UI that allows the user to select the wallpaper image, select a theme, and configure the backlight settings. |
Yes |
Input Settings |
SYSTGEN_INPUTCPL |
Provides a UI for configuring the default input language. |
Yes |
Network Connection Settings |
SYSGEN_ETHERNETCPL |
Provides a UI for the user to connect to an Ethernet network, add a network, and configure network properties. |
Yes |
Regional Settings |
SYSGEN_REGIONALCPL |
Provides a UI for configuring regional settings. |
Yes |
Sound Settings |
SYSGEN_SNDSCHEMECPL |
Provides an interface for users to select ringtones, clock alarms, and new messages. Users can also change or turn off notification sounds for events such as vibrate, silent, new mail, sent mail, screen taps, and calendar alerts. |
Yes |
Wi-Fi Settings |
SYSGEN_WIFICPL, SYSGEN_CTLPNL2 |
Provides an interface for users to connect to a Wi-Fi network, add a network, and configure network properties such as signal strength, connection status, and secure mode. |
Yes |
Software Input Panel |
SYSGEN_XAMLIM |
Provides a SIP that is implemented by using XAML. |
No |
XAML Message Box Support |
SYSGEN_XAMLMSGBOX |
Provides support for the Win32 MessageBox function within a UI built in XAML for Windows Embedded. This feature uses XAML to display Win32 message boxes used in XAML applications. |
Yes |
Networking |
|
Provides networking support (via TCP/IP, IP Helper APIs, Ethernet, Winsock, and NDIS), as well as the Wininet API and Firewall feature. |
Yes |
Networking Security Protocols |
|
Provides networking security protocols, such as the Kerberos protocol, NTLM, and SChannel. |
No |
Wireless LAN (802.11) STA - Automatic Configuration and 802.1x |
SYSGEN_ETH_80211_NWIFI |
Provides the 802.11 native Wi-Fi stack, which creates and manages data connections to wireless networks. |
No |
Network Utilities (ipconfig, ping, route) |
SYSGEN_NETUTILS |
Provides command-line tools that support troubleshooting network connections, including ipconfig, ping, and route. |
No |
Note
If you plan to build applications for your OS design and you want debugging and diagnostics support for application building, include SYSGEN_APPDEBUG and SYSGEN_REMOTETOOLS.
Custom Device
This design template lets you configure the OS by adding catalog items through the template. This template is a starting point for many different devices, ranging from network devices with limited functionality and no display screens to full-featured devices with graphical display screens and multimedia playback. Every item in the catalog is available in this design template. For information about individual catalog items, you can search the help files for descriptions of each catalog item.
Note
If you plan to build applications for your OS design and you want debugging and diagnostics support for application building, include SYSGEN_APPDEBUG and SYSGEN_REMOTETOOLS.