Tuesday, 22 May 2012

Free Compact 7 June Live Meeting


Hi folks,

don’t miss the upcoming June free Compact 7 Webcast held by fellow MVP Doug Boling:

Date:
Tuesday, June 19, 2012 9:00 AM Pacific Time: (GMT-08:00)

Duration:
1 hour

Title:
Image Tuning to balance Performance and Power in Windows Embedded Compact 7
           
Registration:

Description:
The demands of the embedded world make creating the best image possible an absolute requirement. This difficult task is made easier by the vast array of profiling and tuning tools available in Windows Embedded Compact 7. Come learn about these tools and see how they are used in this informative, example filled webcast. 

Have fun!
Read more! Post this to a friend!

Monday, 14 May 2012

Windows Embedded Compact QFEs for April 2012 have arrived!


Hi all,
                 
the April updates for Windows Embedded Compact are available for download:


Fixes made in this Update:


Component: Browser
120419_KB2650110 - This update addresses some issues in Internet Explorer.
120424_KB2679205 - This update provides updated localized dialogs.
120430_KB2689356 - Imgcache bitmap is out of sync and can cause some issues.

Component: Browser & Network
120423_KB2643019 - This update removes UI dependencies for headless support.

Component: Build
120409_KB2692550 - This update addresses possible build breaks.

Component: DirectX
120424_KB2694902 - This update addresses an issue with the CObjDispFilter::ThreadProc not working with the thread priority of registry value.
120430_KB2705374 - Under certain circumstances a video frame is not displayed.

Component: Drivers
120420_KB2689385 - This release installs new updates for flash MDD.

Component: Filesys/Storage
120426_KB2689124 - Incorrect amount of used/free space is reported on TexFAT formatted partition when using the GetDiskFreeSpaceEX API.

Component: NETIO
120418_KB2698706 - An uninitialized local variable in IPNAT may cause an exception.

Component: Network
120411_KB2698969 - This update addresses possible memory corruption.
120411_KB2681259 - Incorrect DHCP sequence may occur when the network cable is unplugged and plugged if the default gateway address is not distributed by the DHCP server.
120430_KB2697703 - This update addresses a memory leak.

Component: Shell
120420_KB2703757 - Memory leak may occur when the file explorer is opened and closed within 2 seconds.

Component: SYNC
120430_KB2704750 - ActiveSync may not update Date/Time in non-DST time zones.

Windows Embedded CE 6.0 Monthly Update April 2012:


Fixes made in this Update:

Component:  Bluetooth
120430_KB2695045 - This update addresses test failures.

Component:  COMM
120417_KB2688906 - A device may not be able to connect to SMB share via USB RNDIS.
120426_KB2697843 - This update addresses an exception.

Component:  DCOM
120411_KB2690112 - This update addresses an issue with some functions not returning an error when the input is negative.

Component:  Internet Explorer
120418_KB2689887 - This update addresses some Internet Explorer issues.

Component:  TFAT
120427_KB2690868 - Incorrect amount of used/free space is reported on TexFAT formatted partition.

Component:  TimeSVC
120411_KB2697599 - This update addresses some DST start/end times from 2011 to 2012.

Component:  WININET
120425_KB2635814 - The 'GetChannelBindingToken' may not update the length field and cause failure.

Windows CE 5.0 Monthly Update April 2012:


Fixes made in this Update:

Component: Internet Explorer
120420_KB2689890 - This update addresses some Internet Explorer issues.

Component: TimeSVC
120411_KB2697598 - This update addresses some DST start/end times from 2011 to 2012.


Remember: it’s important to keep your system up to date!

Have fun!

Read more! Post this to a friend!

Wednesday, 9 May 2012

The future of Windows Embedded Compact and the .NET Compact Framework

Hi folks,

The important news: Windows Embedded Compact is alive and kicking; Microsoft is putting a lot of effort in the Windows Embedded Compact v. Next! Here are the latest highlights of what’s coming with Windows Embedded Compact v. Next:
  • Still based on CE core: hard-real-time, small footprint
  • Supported CPUs: x86, ARM v6T2, ARM v7
  • Native (C++) and managed (C#) application development support in Visual Studio 11
  • .NET Compact Framework update
  • Faster OS boot (2 seconds from power-on)
  • Kernel update: increased file system performance
  • Hardware –optimized code paths for Silverlight for Windows Embedded (SWE)
  • SWE UI development tools in Expression Blend

Windows Embedded Compact v. Next will presumably RTM in the 1st quarter of 2013.

Have fun!

Read more! Post this to a friend!

Monday, 7 May 2012

Free Compact 7 Live Meeting


Hi folks,

don’t miss the upcoming Free Windows Embedded Compact 7 Webcast held by fellow MVP Doug Boling:

Date:
Tuesday, May 15, 2012 9:00 AM Pacific Time: (GMT-08:00)

Duration:
1 hour

Title:
Maximizing the Capabilities of Internet Explorer For Embedded in Windows Embedded Compact 7

Registration:

Description:
An often overlooked feature of Windows Embedded Compact 7 is the extensive capabilities and configurability of Internet Explorer For Embedded. Our version of IE has changeable “chrome” to fit in almost any user interface. As on the Desktop, our version of IE can be embedded into applications as a control. Updated to support some of the latest HTML standards, Internet Explorer For Embedded is a power tool that can be used to create great user interfaces. Learn more about Internet Explorer For Embedded in this month’s webcast.

Have fun!

Read more! Post this to a friend!

Friday, 13 April 2012

Windows Embedded Compact QFEs for March 2012 have arrived!

Hi all,

the March updates for Windows Embedded Compact are available for download:

Windows Embedded Compact 7 Monthly Update March 2012 (Update 9):

Fixes made in this Update:

Component: Catalog
· 120330_KB2666258 - This update adds support for Calibrui module.

Component: CoreOS
· 120322_KB2636175 - This update addresses some issues with UNISCRIBE.
· 120331_KB2693667 - An error may occur when using BINFS and setting COMPRESSION=OFF.

Component: DirectX
· 120313_KB2680238 - An out of memory error may occur when parsing certain WMA files with large file headers.

Component: Networking
· 120316_KB2678235 - Timeout of IcmpSendEcho may not work correctly.
· 120320_KB2686797 - The event notifications (NOTIFICATION_EVENT_NET_CONNECT and NOTIFICATION_EVENT_NET_DISCONNECT) are not being raised.
· 120309_KB2672387 - IPv6 default gateway address is not displayed when ipconfig command is issued.
· 120331_KB2672189 - Users are not able to disable the IPV6 temporary address by setting the registry 'UseTemporaryAddresses' to '0'. A new registry is added to configure the 'Temporary IPV6 address'. The default value is set to '1' (enabled). [HKEY_LOCAL_MACHINE\Comm\Tcpip6\Parms\GlobalParams] "UseTemporaryAddresses"=dword:1
· 130331_KB2675756 - Memory leak may occur when adding/removing interfaces.

Component: OSShell
· 120308_KB2683496 - When screen is rotated, an opened alchemy application appears on top of Z-order.

Component: SCHANNEL
· 120319_KB2650116 - This update addresses an issue in Schannel.

Component: Tools
· 120330_KB2689819 - This update addresses some build issues with the cloned modules.

Windows Embedded CE 6.0 Monthly Update March 2012:

Fixes made in this Update:

Component: COMM
· 120329_KB2679890 - Winsock goes into waiting state while receiving data and may cause some data failures.

Component: DevMgr
· 120313_KB2685136 - An error may occur when USB Mass Storage device is plugged and unplugged.

Component: Filesys
· 120320_KB2676298 - Under certain circumstances a deadlock may occur.

Component: Internet Explorer
· 120312_KB2675735 - IME On/Off modes are not working as expected.

Component: Kernel
· 120319_KB2686451 - Under certain circumstances time shifts of one hour may occur.
· 120316_KB2684184 - DebugZones set in the registry are not honored for modules that load in boot phase 0.

Component: MSFlash
· 120319_KB2687725 - System hang may occur during boot up.

Windows CE 5.0 Monthly Update March 2012:

Fixes made in this Update:

Component: TimeSVC
· 120313_KB2683396 - This is a DST update for Chile.

Remember: it’s important to keep your system up to date!

Have fun!
Read more! Post this to a friend!

Wednesday, 4 April 2012

WEDU registration endless loop

Hi folks,

When I tried updating my Windows Embedded Compact 7 environment which has to be done with Windows Embedded Developer Update (WEDU), I was never able to get past the registration page.

The solution in a nutshell:
You HAVE to select “Yes, I agree” to the question “* Do you agree that a Windows Embedded representative may contact you using the phone number or email address provided by you to supply further Windows Embedded information?

Thanks Michael for the solution! You can read his full post here.

Have fun!
Read more! Post this to a friend!

Monday, 2 April 2012

How to reduce driver development turn around time

Do you think that driver development under Windows CE is a time-consuming challenge? Ok, not all coders like twiddling with registers and interrupts - that's why we are here.
Under CE - and similar to other embedded operating systems - a 'normal' and therefore sometimes boring driver development cycle looks like that:

    1. Compile and link the driver dll from driver source

    2. Download and boot the modified image

    3. The OS loads the driver and you start debugging

    4. Go to 1 (Do not pass Go, do not collect $200)

Fortunately, there are some shortcuts in this cycle that saves you lots of time.

The first, simple and well known means is to exclude the driver binary from the CE image. Let the OS load the driver from the release file system (Relfsd). With that there is no need to perform a 'makeimg' after each driver modification. Note: This requires a working KITL connection.

The next shortcut requires some initial work but mosly there's no need to download and boot the OS image in each cycle.

I'm sure you will re-use this driver development pattern in future.
For that you have to rename the driver registry entries. Instead of "Drivers\BuiltIn\MyDriver" use for example "Drivers\BuildInTest\MyDriver". With that the driver is not loaded during boot. Then write a simple driver test tool that performs the following steps:



    1. Create a named event. If the event already exists signal the event and goto step 6; otherwise continue with the next step.

    2. Copy the registry data from "Drivers\BuiltInTest\MyDriver" to "Drivers\BuildIn\MyDriver".

    3. Let the OS load and start the driver via ActivateDeviceEx() API function.

    4. Wait for the named event to be signalled by a second instance of the edriver test tool.

    5.As the event gets signalled unload the driver by calling DeactivateDevice() API function.

    6. Free the event so with the next start of your test tool it again loads the driver.

    7. Simply exit :-)

With all that stuff prepared you load your driver by starting the test tool the first time (e.g. via CE shell "s loaddriver.exe". Now you can test/investigate your driver as in former times. The big difference is that you can unload the driver by starting the test tool a second times, modify your driver and start over without the need to reboot the OS again.


This little development pattern accompanies my since I started CE development about 10 years ago. So it's high time to share :-)


Read more! Post this to a friend!