This project is read-only.

Note: The Managed Code material is held over until next week

Topics:

  • Updates in Compact13Tools Version 4.0
    • Includes a Windows style Start Menu
  • CE SerialTerm
    • A Simple Serial Terminal for Compact 2013/7

Compact 13Tools V4.0 Features

  • Includes a new Explorer Shell style Start Menu that uses shortcuts.
  • MinShell menu is sorted
  • Corecon had the wrong registry entry. It pointed to the Microsoft registry branch rather than the Compact13Tools branch. It now appears on the MinShell menu again.

MinShell and Compact13Tools Codeplex Projects

Windows Embedded Compact 2013 does not support the Windows 95 style Explorer Shell. It does though provide a simple shell with a dropdown menu, MinShell.  This reads certain registry setting to create a list of apps that can be launched via the menu. One item is implemented, the command prompt. The Compact13MinShell Codeplex project extends the capabilities of the MinShell component from Windows Embedded Compact 2013 by adding certain runnable items to the menu. It is a selectable Catalog component that can be used instead of MinShell. WEC 2013 has also had removed a number of useful apps.  Compact13Tools, also on Codeplex adds a number of useful tools and includes these in its MinShell menu. As of  version 3.0 of Compact13Tools, the associated MinShell project is included and so a separate download is not required

Reliability: Compact13Tool's MinShell has also been made more reliable using an adjunct app ForeverShell which is an additional component in the Tools.  This is what is actually configured to run as THE OS shell when included in the OS. It loops forever calling Compact13MinShell. That way if this MinShell exits by design or because of a an eror, it is rerun.

Components: All of these components appear in the WEC 2013 Catalog under the Third Party/Embedded101 tree, if the download is unzip and copied to the 3rdParty folder under the WindowsCE Root (C:\WINCE800 typically) .. A catalog refresh is required.

Compact13Catalog

Compact13Tools Components in the WEC2013 Catalog

As stated, Compact13Tools includes a number of custom apps. Whereas the Minshell and Forevershell components are native code,  these have been developed as Managed Code apps. They are though included as prebuilt items in a CEComponentWiz style OS Subproject.  CEComponentWiz (available on Codeplex) is affectively a Visual Studio plugin that can wrapper files into a content delivery OS subproject (rather than a project that builds a native code app or DLL).

The Compact13MinShell on its own provides the following menu items:

  • Command prompt
  • ipconfig, with output to Debug Window
  • Target Control(shell.exe) Window on device
    • Note that this requires KITL to be enabled

Comapct13Tools adds the following tools to the OS and the MinShell menu:

Compact 2013 Tools Apps V4.0
Application Description
Compact13ForeverShell Use this as "the shell" instead. It launches 'Minshell in a loop so that if Minshell exits/crashes it is relaunched.
Compact13RunApp Can browse file system to choose app and launch it. Can navigate to shortcuts as well.
Compact13TaskManager A simple implementation of a Task Manager to switch to applications and close applications via their windows. Can also launch new tasks as per Compact13RunApp. This version PInvokes a DLL to do the Window Enums (Works in ARM).
AppWindowEnums Required by 'Taskmanager. The Native Code DLL (OS Subproject) that enumerates app windows and gets their text. Handles the Callbacks.
Compact13WebBrowser A simple Web Browser implementation in IE style using the Compact Framework WebBrowser component.
Compact13Notepad A text editor with similar UI to the Windows classic Notepad,
CoreCon3 The CoreCon modules required for debugging SDK Managed Code apps.

Compact13RegEdit

Included from http://RegEdt4CE.codeplex.com Additional functionality: Flush Registry
 Compact13StartMenu

NEW:
Takes directory from command line and list all apps one or two deep in a menu for launching. Default directories are \Windows and \Temp.
Replaces Compact13MyAppMenu.
Adds a Start Menu using Shortcuts (See Download Release (4.0)

Compact13PrototypeApp Template project for creating additional tools
ConsoleAppWithWindowText Simple Native Code app that writes to its Window text. TaskManager will differentiate between such apps as it uses Window text. TaskManager cannot differentiate between apps called Console.

Background: The Compact13MinShell can also have its background image and/or color changed. You change them registry, flush the registry, then kill the shell. It then restarts(via ForeverShell) with the new settings.

Start Menu: Version 3.0 of the tools added an app, selectable from the MinShell menu that listed all apps in \Windows making it easy to run anything, especially given there is no FileExplorer to to go looking for them. (The Compact13RunApp tool can do this though.) It also had another manifestation where all apps in folders one deep in \temp can be listed for selection in a menu as well. The purpose of this is that all SDK apps under development are located in these folders. eg An SDK app called MyGame would be located as \temp\MyGame\MyGame.exe. Version 4.0 replaced this with Compact13StartMenu app which is able to list app shortcuts in a Start Menu:

The Start Menu

As with previous versions of the OS, all app .exes are placed in \Windows but they can appear to be elsewhere in the file tree by placing shortcuts elsewhere. The Explorer Shell (no longer available for WEC from version 2013) used shortcuts for its Windows Start Menu. Shortcuts placed in \Windows\Start Menu appeared on the first level of the Start Menu. There were also special folders for things items to appear in the submenus such as  Programs submenu.

This version of Compact13Tools, whilst not removing the MinShell menu, has a "Start Menu" as the first item list as *Start Menu*. Apps that have a shortcut in the folder as above appear on the floating menu and are run by a single click. Three of the Compact13Tool's subprojects have been modified so their .dat file has the required code for generation of the shortcut in that folder as above and so appear on the Start Menu are (Notepad, WebBrower, RegEditor. Other related Codeplex tools are being modified to include this shortcut generation. The new CESerialTerm already has it.

The required Catalog component is Compact13Start Menu, and is built as Compact13StartMenu.exe
Note that this replaces Compact13MyAppMenu, that was used in the previous release to generate a a menu of runnable items under \Temp an in \Windows. Compact13StartMenu.exe using suitable command line parameters also generates these menus as the second and third MinShell menu items.

 

!! Other
* Note that Compact13StartMenu project is a Managed Code Subproject of the OS and is completely built with the OS. (See my Blog on Manaaged Code about this .. coming later). All other Managed Code apps in teh tools are prebuilt binaries.


Previous:

 

Next:

Last edited Mar 25, 2014 at 1:14 AM by DJonesEmbedded, version 2