Shell Migration

Other versions of this page are also available for the following:

Windows Mobile Not SupportedWindows Embedded CE Supported

8/28/2008

This topic contains information about migrating Shell functionality from earlier versions of the operating system.

For general Windows Embedded CE migration information, see Migrating from an Earlier Version of Windows Embedded CE.**

Migrating from Windows CE .NET 4.2 to Windows CE 5.0

  • The definitions for notifications sent by GWES to Shell via WM_SHELLNOTIFY have changed.

    The previous notification codes are:

    • HSHELL_WINDOWCREATED
    • HSHELL_WINDOWDESTROYED
    • HSHELL_WINDOWACTIVATED
    • HSHELL_REDRAW
    • HSHELL_CAPSLOCK

    The new notification codes are:

    • SHELLNOTIFY_WINDOWCREATED
    • SHELLNOTIFY_WINDOWDESTROYED
    • SHELLNOTIFY_WINDOWACTIVATED
    • SHELLNOTIFY_REDRAW
    • SHELLNOTIFY_CAPSLOCK
    • SHELLNOTIFY_LANGUAGE

    SHELLNOTIFY_LANGUAGE is a new notification code for Windows CE 5.0.
    These notifications are defined in %_WINCEROOT%\Public\Common\Oak\Inc\Pwinuser.h. The taskbar code that handles these notifications is CTaskBar::OnWmShellNotify.

  • The registry settings for time zones have changed and are now compatible with the desktop version of Windows. The registry keys for time zones are no longer localized, instead a new value, called Std, is provided under each time zone. Std contains a translated string to display the Standard Time name of the time zone. This change will apply to OEMs and IHVs who use the Shell catalog item. The follwing registry setting has changed.

    [HKEY_LOCAL_MACHINE\Time Zones\LOC_GMT_MINUS_10_A_STANDARD]
    "Display"=mui_sz:"cplmain.cpl,#34306"
    "Dlt"="LOC_GMT_MINUS_10_A_DAYLIGHT"
    "TZI"=hex:58,02,00,00,00,00,00,00,c4,ff,ff,ff,\
      00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
      00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
    

    The following registry setting is accurate for Windows CE 5.0.

    [HKEY_LOCAL_MACHINE\Time Zones\Hawaiian Standard Time]
    "Display"=mui_sz:"coredll.dll,#32770"
    "Dlt"=mui_sz:"coredll.dll,#33026"
    "Std"=mui_sz:"coredll.dll,#33282"
    "TZI"=hex:58,02,00,00,00,00,00,00,c4,ff,ff,ff,\
      00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
      00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
    

    In the preceding example, Hawaiian Standard Time registry key is not localized.
    For time zones information, applications should use GetTimeZoneInformation and SetTimeZoneInformation. For more information, see Time Zone Registry Settings.

Changes Effective in Windows CE .NET 4.2

  • The Null Speech-recognition Engine (SYSGEN_NULLASR) and Null Text-to-Speech Engine (SYSGEN_NULLTTS) are no longer supported.

  • LNK files that are used for creating shortcuts and for linking application help files to the HTML Help engine, must now provide the full path to the application they launch when the link file is selected.
    In earlier versions you could omit a path and the shell would search in several known locations to try to find the application. This behavior was changed because it posed a security risk.
    The Taskman sample shell is no longer shown in the Catalog; however, support is still available in Windows CE .NET 4.2. To add the Taskman shell to your OS design, set the environment variable __SYSGEN_TASKMAN to 1.

  • The Sysgen flag that is used when the Control Panel is in Portrait orientation mode has changed. Any OS designs that use the SYSGEN_CPLMAIN_LP=P setting should now use SYSGEN_QVGAP.
    Landscape orientation is the default and does not require a Sysgen flag.

  • The behavior of CSIDL_DESKTOP is now equivalent to CSIDL_DESKTOPDIRECTORY. For more information, see SHGetSpecialFolderPath.

  • TB_SETTOOLTIPS now supports passing a handle to the parent window. The original behavior, that uses both wParam and lParam, is still supported for backward compatibility. For more information, see TB_SETTOOLTIPS.

  • The following table shows the property sheets for Control Panel that have moved to a different dialog box.

    Control Panel element Legacy dialog box New dialog box

    Device Name tab

    Communications Properties

    System Properties

    PC Connection tab

    Communications Properties

    PC Connection Properties

    Identification tab

    Network Configuration

    Owner Properties

    Adapters tab

    Network Configuration

    No longer in Control Panel

See Also

Other Resources

Shell