Target Control (shell.exe -c) requires Kitl (Compact13Minshell issue)

Feb 3, 2014 at 11:59 PM
Query:
I have seen your Windows Embedded Compact 2013 MinShell on CodePlex but not used yet.
You say that you have included Target Control Windows (shell.exe) and it is true in the menu of MinShell due to following settings in reg file in your subproject :

; @CESYSGEN IF CE_MODULES_SHELL
; Menu for TargetControl
[HKEY_LOCAL_MACHINE\Software\Compact13Tools\Shell\Minshell\Target Control]
"App"="shell"
"Param"="-c"
; @CESYSGEN ENDIF

I have a doubt regarding the inclusion of shell.exe file inside the image.
If you see C:\WINCE800\public\common\oak\files\common.bib there are the following lines :

; @CESYSGEN IF CE_MODULES_SHELL
IF IMGNOKITL !
shell.exe $(_FLATRELEASEDIR)\shell.exe NK
shellcelog.dll $(_FLATRELEASEDIR)\shellcelog.dll NK SH
ENDIF IMGNOKITL !
; @CESYSGEN ENDIF

The file shell.exe is included only if the KITL is active (typically in Debug OS image).

In this way, if you build a Release OS image with KITL disabled, the shell.exe isn't included and the line you add in the MinShell menu doesn't work. Is it right ?
Feb 4, 2014 at 12:03 AM
Edited Feb 4, 2014 at 12:39 AM
A Retail build is normally still a development build. I would normally still include KITL with Retail build.
A ship build is what you would deploy which shouldn't have Minshell anyway.

I was able to use the Target Control via the Minshell menu on an image built including KITL that wasn't connected to a development system, I had launched the nk.bin using CELoader:
CELoader on Codeplex

Thanks for the feedback.