March 2010 Entries

Windows Embedded CE DiskPrep PowerToy
Kurt Kennett from Microsoft has offered up a handy new tool. This tool is useful for creating a boot disk for x86 Windows CE systems that use the BIOSLoader. This is especially useful for creating disks with formats other than FAT16, which are fairly easy to create. I am letting you know about this new tool, but I have to be honest in telling you that I haven’t used it myself because it is for Windows Vista and Windows 7 – which I don’t have available right now. But you can bet that I will be setting ......

Posted On Tuesday, March 30, 2010 8:45 PM | Comments (0)

Windows CE Chat Transcript (March 30, 2010)
For those of you who missed the chat today, here is the raw transcript. By raw, I mean that I copied and pasted the discussion without any edits. This is divided into two parts, the top part is the answers from the Microsoft Experts and the bottom part is the questions from the audience. Answers from Microsoft: Karel Danihelka [MS] (Expert)[2010-3-30 12:2]: Hi everyone, my name is Karel Danihelka and I am developer in partner response team. Sing Wee [MS] (Expert)[2010-3-30 12:2]: Hi, I'm Sing Wee, ......

Posted On Tuesday, March 30, 2010 8:33 PM | Comments (0)

Notice: New Release of Simple Little Registry Editor
The Simple Little Registry Editor found in Windows CE: Simple Little Registry Editor has been updated to fix a few bugs. See the release notes at the bottom of that page for the changes. Copyright © 2010 – Bruce Eitman All Rights Reserved ......

Posted On Thursday, March 25, 2010 11:16 PM | Comments (0)

Windows CE Chat March 30, 2010
Another great opportunity to ask Microsoft engineers your technical questions is coming up on Tuesday, March 30th. These chats are your opportunity to get advice and answers from the engineers at Microsoft. You may want to review the transcript from last month to get an idea about what kind of topics are discussed. Title: Windows CE Live Chat! When: Tuesday, March 30, 2010 9:00 - 10:00 A.M. Pacific Time Add to Calendar Description: Do you have tough technical questions regarding Windows CE or Windows ......

Posted On Wednesday, March 24, 2010 10:34 PM | Comments (2)

Platform Builder: Cloning – the Linker is your Friend
I was tasked this week with making a minor change to NetMsgBox() behavior. NetMsgBox() is a little function in NETUI that handles MessageBox() for the Network User Interface. The obvious solution is to clone the entire NETUI directory from Public\Common\Oak\Drivers (see Platform Builder: Clone Public Code for more on cloning). If you haven’t already, take a minute to look in that folder. There are a lot of files in the folder, but I only needed to modify one function in one of those files. There ......

Posted On Tuesday, March 23, 2010 9:11 PM | Comments (2)

Platform Builder: Building Cloned Code from Multiple OS Versions
My career goal is to delete more code than I write, and so far I have been fairly successful. But of course once in a while I need to clone code from the public tree which is contrary to my goal. Usually what follows is a new OS release. To help reach my goal, my team uses the same BSP code for multiple versions of the OS. That means that we need to handle the cloned code so that the correct code builds for the OS version that we are working on. To handle this we could use SKIPBUILD in the sources ......

Posted On Monday, March 22, 2010 9:44 PM | Comments (0)

Windows CE: Using IOCTL_DISK_GET_STORAGEID
A customer approached me recently to ask if I had any code that demonstrated how to use STORAGE_IDENTIFICATION, which is the data structure used to get the Storage ID from a disk. I didn’t have anything, which of course sends me off writing code and blogging about it. Simple enough, right? Go read the documentation for STORAGE_IDENTIFICATION which lead me to IOCTL_DISK_GET_STORAGEID. Except that the documentation for IOCTL_DISK_GET_STORAGEID seems to have a problem. The most obvious problem is that ......

Posted On Sunday, March 21, 2010 10:50 PM | Comments (3)

Platform Builder: Removing the Version Information from the Desktop
The question of how to remove the version information from the desktop has been around for a long time. It came up again today. The question is about the string displayed on the desktop that looks like one of these, depending on the OS verison: Windows Embedded CE v6.00 (Build xxxx on xxxx) Microsoft Windows CE v5.00 (Build xxxx on xxxx) Microsoft Windows CE .NET v4.20 (Build xxxx on xxxx) I have looked into this in the past, but never really had a definitive answer. I have an answer now. The short ......

Posted On Thursday, March 4, 2010 2:34 PM | Comments (1)

Windows XP: Overview of Battery Monitor Series
Download the Complete Battery Monitor Source Code I recently completed a series of articles on monitoring batteries in Windows XP. The link above allows you to download the complete project which includes six folders. The purpose of this article is to associate the folders with the articles. The folders that you will receive are: BatteryMonitor is the C# application and C# Win32_Battery class discussed in Windows XP: Displaying Battery Status in C Sharp and Windows XP: Monitoring Batteries in C Sharp. ......

Posted On Wednesday, March 3, 2010 1:43 PM | Comments (0)

Windows XP: Displaying Battery Status in C Sharp using a C++ DLL
Download the Complete Battery Monitor Source Code See Windows XP: Overview of Battery Monitor Series for a description of the folder in the source code. This is article number 5 in a series of articles about monitoring batteries in Windows XP. In Windows XP: Monitoring Batteries in C Sharp I presented a C# class that can be used to get information about the system batteries. In Windows XP: Monitoring Batteries in C++ I presented a similar C++ class. Then in Windows XP: Displaying Battery Status in ......

Posted On Tuesday, March 2, 2010 3:56 PM | Comments (0)

Windows XP: Displaying Battery Status in C++
Download the Complete Battery Monitor Source Code See Windows XP: Overview of Battery Monitor Series for a description of the folder in the source code. This is article number 4 in a series of articles about monitoring batteries in Windows XP. So far, I have presented a C# class (Windows XP: Monitoring Batteries in C Sharp), a C++ class (Windows XP: Monitoring Batteries in C++) and a C# (Windows XP: Displaying Battery Status in C Sharp) application. In this article, I will present three different ......

Posted On Tuesday, March 2, 2010 2:42 PM | Comments (0)

Platform Builder: Building an API and Releasing it to an SDK
A colleague asked me how GPSAPI.lib is built and makes it into the SDK. So we found ourselves in a long discussion which included a massive flow diagram on a whiteboard. In this article, I am going to try to reproduce what we ended up with on the whiteboard, but frankly on the whiteboard it was easier to draw. My colleague had tried to build GPSAPI by opening a build window and running build in the GPSAPI folder. What he did was: In doing so, he built some source code in the public tree, and the ......

Posted On Monday, March 1, 2010 1:47 PM | Comments (2)