Skip to Content

h4. Intro/Need:

It is a painful truth that most of the administrators or developers have incredible deadlines to meet and many a time, people working with MI find that a lot of their precious time is robbed when troublehooting MI client/app issues on a PDA. This blog here will detail some undocumented features, myth busters and also some tips/tricks to make your life easier in MI.

Note: Some of the findings below, took a lot of my research time. Use it well 🙂

Loading CrEme… What?

The first thing that comes to my mind when you think about CrEme, is the way a lot of people using it look at it.

Q: That initial Splashscreen, is it loading CrEme or MI?

A: Yes and Yes, meaning it is initially launching CrEme JVM using CrEme.exe (similar to your java.exe in PC) and then loads either the MI JSP tomcat server or MI AWT client.

Trick:

Q: I dont want the initial CrEme splash screen and just want a silent launch of MI?

A: In PDA Goto \Windows\Startup (for JSP) or \Windows\Start Menu\Programs (AWT) using ActiveSync and copy MIServer.lnk (7.0 JSP) or MobileEngine.lnk(2.5 JSP&AWT) or MobileInfrastructure (7.0 AWT) to your PC.

Now edit the shortcut using Notepad like the below screenshot (done with MI 7.0 JSP client shortcut).

MI PDA start Without CrEme Splash

What is this \jscpoutxx.txt doing? How do I reduce its size or better automatically delete it?

The answer is quite simple – CrEme MI logging can be switched off, by removing the -Of flag from the Startup shortcut. You can see the flag I am talking about in the screenshot above just after the highlighted -sp:0 flag/parameter. Now your next question might be – Are there any other flags/parameters for CrEme. The answer is yes. For a quick reference, use the below table for CrEme 3.2x.

Generic Command Line Parameters for CrEme 3.2x:

Parameters

Comments

-av

Runs Java Applets. By default CrEme runs Java Applications

-mv

Runs MIDlets. –mv midletname (class file or jad file)

cf <file name>

Enables one to organize and compactify the command-line through a macro mechanism

-mi

Allows for multiple instances of CrEme to run concurrently

-aa <value>

Specifies the Anti-Aliasing level. The value can be from 0 (no Anti-Aliasing) to 5 (highest quality).

–softfont

Enables to change the default fonts dialog, dialoginput, serif, sansserif, monospaced. When -softfont is used, the font.properties file must be present, all five default fonts must be defined in it, and point to existing font files.

–jar</td><td valign=”top” style=”padding: 0cm”><p>  CrEme.exe -jar <path> assumes <path> is a jar file and executes the main class specified in its manifest. The default classpath consists of the executed jar file and the directory in which it resides. If a classpath is specified in the manifest, its elements are added to the default classpath.</p></td></tr><tr><td valign=”top” style=”padding: 0cm”>–mon[:<IP address>]

To have CrEme support the monitor utility the –mon has to be added to the CrEme command line. The IP address that can be optionally specified must be the address of the device the monitor utility is running on. Both physical and logical IP addresses are accepted. Do not write a space between –mon and the IP address. If no IP address is specified, the IP address of the Windows CE device must be specified in the monitor utility.

-Of [<directory>]

Sets the console output to be redirected to a jscpout.txt file located in the specified directory. If no directory is specified the jscpout.txt file is created in the root directory of the device.

-Ob

Sets the console output to be redirected to a window console

-Om

Sets the console output to be redirected to the Monitor

-font  <filename>

Overwrite the default font file with the font filename specified.

*-nlfont ** </td><td width=”447″ style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p style=”margin: 0cm 0cm 0pt”>Font file used for non latin1 characters verwriting the use of the WingDings font file for  non latin 1 characters</p></td></tr><tr><td width=”145″ style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”>-vkb</td><td width=”447″ style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p style=”margin: 0cm 0cm 0pt”>Tells CrEme to popup the MS virtual keyboard when a text field is clicked.</p></td></tr><tr><td width=”145″ style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”>-noblock</td><td width=”447″ style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p style=”margin: 0cm 0cm 0pt”>Calls user-defined native functions in separate thread and so prevents them from blocking the operation of CrEme. There is a performance cost associated to this flag. The creme.Noblock class enables the calling of blocking native methods without a performance penalty.</p></td></tr><tr><td width=”145″ style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”>-ntb</td><td width=”447″ style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p style=”margin: 0cm 0cm 0pt”>Starts CrEme full screen on PocketPC (without the task bar & SIP bar)</p></td></tr><tr><td width=”145″ style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”><p class=”MsoNormal”>-tiny</p></td><td width=”447″ style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p class=”MsoNormal”>Instructs CrEme to use the TinyAWT graphical interface</p></td></tr><tr><td width=”145″ style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”>-title</td><td width=”447″ style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p class=”MsoNormal”>Set the name for the title bar. </p></td></tr><tr><td width=”145″ valign=”top” style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”><p class=”MsoNormal”>-ml </p></td><td width=”447″ valign=”top” style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p class=”MsoNormal”>Sets Java memory limit value in KB. Ensures that CrEme will use only the specified amount of memory.</p></td></tr><tr><td width=”145″ valign=”top” style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”>-sp: of 0 tells CrEme to start without the splash window of 1 tells CrEme to keep the splash window until the application terminates

-verbose

Verbose mode. Prints the status of classes being loaded and ran. Can degrade overall performance

-verbosegc

Verbose garbage collection output. Prints information about the state of the GC

-verbosenative

Prints user-defined native methods as they are invoked

-wd

New working directory. Default working directory is root ‘\’ (“My Handheld PC”)

-verify

Verifies all classes that are being read in

-noverify

Doesn’t verify any classes

-D<name>=<value></p></td><td width=”447″ valign=”top” style=”width: 335.25pt; border: black 1pt inset; padding: 5.25pt”><p class=”MsoNormal”>Sets Java property <name> to the specified <value> </p></td></tr><tr><td width=”145″ valign=”top” style=”width: 108.9pt; border: black 1pt inset; padding: 5.25pt”><p class=”MsoNormal”>-nojit

disable JIT

-bcp <claspath>

Bootclasspath; list directories in which to look for system classes

-classpath <classpath>The above was the soft way of shutting down MI JSP client in pda. We can hard stop the MI Engine by killing the JVM(CrEme.exe). This would need a task manager app. In the Windows Mobile space, there is a very useful freeware Task Manager *** Registry Editor, which can be found @ http://www.dotfred.net/TaskMgr.htm  (http://www.dotfred.net/TaskMgr.htm)

Install the CAB file you get from the website and launch the Task Manager from Start->Pograms->System->Task Manager

Now find the CrEme.exe (VM) in the processes tab and click  the Close button. Refer to the screenshots below for better understanding.

!https://weblogs.sdn.sap.com/weblogs/images/251826589/TM_CrEmeStop.JPG|height=320|alt=Task Manager Creme.exe Close|width=240|src=https://weblogs.sdn.sap.com/weblogs/images/251826589/TM_CrEmeStop.JPG|border=0! !https://weblogs.sdn.sap.com/weblogs/images/251826589/TM_CrEmeKill.JPG|height=320|alt=Task Manager CrEme Kill Confirmation|width=240|src=https://weblogs.sdn.sap.com/weblogs/images/251826589/TM_CrEmeKill.JPG|border=0! !https://weblogs.sdn.sap.com/weblogs/images/251826589/TM_CrEmeKillSuccess.JPG|height=320|alt=Task Manager CrEme Kill Success|width=240|src=https://weblogs.sdn.sap.com/weblogs/images/251826589/TM_CrEmeKillSuccess.JPG|border=0!

On a relative note, I have heard that there is a CrEme plugin for Pocket Internet Explorer? How do I register it to run applets in PIE?

All you need is a Windows Mobile tool called *regsvrce.exe *in \Windows\ directory in the PDA. Some vendors do not supply it with the PDAs. If that is the case get it from the WM emulator. You can refer my blog on Windows Mobile Emulator  (https://weblogs.sdn.sap.com/pub/wlg/13593) to know where to get the emulator or know about how to use it in general.

Now, launch the regsvrce.exe from \Windows\ directory. You may have to use the File Explorer from Start->Programs->File Explorer in the PDA. Assuming that your CrEme was installed to the device memory, enter the path \Windows\CrEme\bin\CremePie.dll in the path text box and press Ok, as can be seen in the following set of screenshots.

!https://weblogs.sdn.sap.com/weblogs/images/251826589/Regsrvce1.jpg|height=320|alt=regsrvce.exe registering dll image1|width=240|src=https://weblogs.sdn.sap.com/weblogs/images/251826589/Regsrvce1.jpg|border=0! !https://weblogs.sdn.sap.com/weblogs/images/251826589/Regsrvce2.jpg|height=320|alt=regsrvce dll register success|width=240|src=https://weblogs.sdn.sap.com/weblogs/images/251826589/Regsrvce2.jpg|border=0!</body>

To report this post you need to login first.

5 Comments

You must be Logged on to comment or reply to a post.

  1. Nicolas Eliaschev
    Hi, i want to run CreMe on a Windows Mobile 6.1 Classic (CE OS 5.2). I intalled the version Creme 327 but i have an error, i need SSL to run the app and i have it instaled!

    Do you know which version should i install??

    Bye and regard

    Nico

    (0) 
    1. Veeraraagavan Rajachandrasekhar Post author
      What error are you getting? Have you checked the jscpout.txt? CrEme 3.27a should work. The only difference between Windows Mobile Classic and Windows Mobile Professional, is the ability to make phone calls, so the said version should work.
      (0) 
      1. Nicolas Eliaschev
        Hi, this is the error:
        “SSL required to access this page”

        When i want to log in in the MI Client, i get this error and i cant do anything. You think the creme version is all right? Or there is something else to install besides the creme?

        Thanks a lot, Great Blog!

        Bye

        (0) 

Leave a Reply