 |
|
 |
 |
Tuesday, August 5, 2008 |
The MSDN article Synchronous and Asynchronous Operations explains what options are available to you when using WCF. It even tells me that svcutil.exe has an /async switch. Great!
Now, back to my current home turf, Compact Framework. There is netCFsvcutil.exe, that comes with the Compact Framework Power Toys 3.5. Guess what? That option isn't available in this scaled down rendition of svcutil.
Once again Compact Framework makes it so much harder to work productively, and here's why:
http://msdn.microsoft.com/en-us/library/2e08f6yc.aspx
Quote: Asynchronous delegates, specifically the BeginInvoke and EndInvoke methods, are not supported in the .NET Compact Framework.
Back to the drawing board and the thread pool (most likely).
 |
Wednesday, July 30, 2008 |
I am currently working on a Compact Framework project, and started development on a different machine - where I successfully used the Cellular Emulator of the Windows Mobile SDK. Today, on the other machine (the laptop), it didn't start but present me with the following error message:

After some searching (on the G-word search engine), I came across this post:
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=3538593&SiteID=1
Sure enough I am using Vista x64, heck, we are living in 2008 with multicore CPUs and 4GB+ of RAM!
And here is the Catch 22: when moving development to a Virtual PC image, you don't get USB ports which you need for connecting to a real device...
 |
Monday, July 11, 2005 |
And it works just fine (here you can get one for yourself):

 |
Wednesday, May 11, 2005 |
 |
Thursday, March 3, 2005 |
When doing development for Windows Mobile, you definitely need the Windows Mobile Developer Power Toys. Especially because of the included Emulator ActiveSync Connection Tool, which allows Activesync to connect to your Emulator session from Visual Studio .NET 2003. The other tools are also quite nice, such as ActiveSync Remote Display, CECopy or PPC Command Shell.
 |
Wednesday, March 2, 2005 |
 |
Thursday, February 24, 2005 |
CERapi is a managed API for using the Windows CE Remote API (RAPI) from C#, VB.NET and other managed languages. It comes with complete documentation, examples and currently supports:
- Retrieving device and OS information
- Retrieving Battery (main and backup) charge details
- Retrieving Memory details of the device
- Retrieving Special Folders, Storage details and moreā¦
Found here.
 |
Wednesday, January 26, 2005 |
 |
Wednesday, January 12, 2005 |
Today, I got my silicone jacket as well as the car to USB adapter for my SPV C500. Both live up to my expectations, especially the silicone jacket should help keep the dust out!
 |
Monday, December 20, 2004 |
I previewed the search feature last week with a couple of screenshots. Today I did what I promised to do (review the new code thoroughly), and now I'd like to invite you to download the latest version of the registry editor (0.8.2 dated 12/20/2004).
Note on the search feature: it is pretty intuitive in Tree View mode which node is the search root. However, in List View mode, things are inferred in a way that I hope is intuitive enough: when no subkey is selected, then the search root is the current key whose subkeys / values are currently displayed.
Also of note: deployment to the SmartPhone is now easier, please see the PDF for details (I am now using RapiDeploy).
 |
Thursday, December 16, 2004 |
I just finished the search feature, which means I haven't had the time for thorough testing and code review (no download today, next week). But I have a few screenshots for you to whet your appetite.
Go to the key where you want to start your search (tree view or list view doesn't matter even if it is shown here in tree view):

Choose Search (now option #1) from the menu:

This brings up the search form. Nothing really stellar, but it does the trick. By clicking Search, you kick off the search thread (yes, this thingie is multithreaded!):

The search results are shown in a listview of its own right, with values and keys mixed. Note that there is an infobox at the bottom which tells you where it found the key / value:

Now for the cool stuff - clicking on the key takes you to the listview you already know:

When you now do Menu / Search again, you are back at the search results:

Guess what - clicking on a value opens the value editor. I think I got the user interface right on this one.
 |
Wednesday, December 15, 2004 |
RapiDeploy is a command-line that can be used to deploy files to devices connected via ActiveSync (this includes the Pocket PC 2003 Emulator). In addition, if you are deploying CAB files, you can use the optional /install switch to install the CAB's contents. Download
Will be included in the next drop of the Registry Editor for easier installation.
 |
Tuesday, December 14, 2004 |
Finally found some time to add a few missing things to the registry editor: most importantly editors for string[] (REG_MULTI_SZ) and byte[] (REG_BINARY), as well as some other improvements (mostly behind the scenes).
Like last time: please read doc\Program Notes (4 Dev and User).pdf before installing!
Details from ChangeLog.txt:
- Byte[] editor added (needs to be improved user-input-wise) - String[] editor added - Editors are now loaded via Hashtable and Reflection (easier to maintain) - Menu restructuring (New Value submenu) - KeyPress event for DWORD editor modified to only allow numbers to be entered - New project directory structure
Download (795KB)
 |
Thursday, December 9, 2004 |
 |
Thursday, December 2, 2004 |
Ok, I was convinced to release my current development bits to the general public for public criticism. A PDF document accompanies the download. Make sure you read that first before installing, because installation is rough to say the least (developer friendly, but not end user compatible). But judge for yourself.
Now for the more interesting part: source code is included! This nice registry editor is open source, licensed under the GNU General Public License (GPL). I hope that it can serve for more than just a bad example of how not to do things on a Smartphone . Count on me for documenting the pitfalls and stumbling blocks that I magically wasn't able to avoid.
So without further ado, here is the download. If you want to read up on the history of the project, simply dig into the Smartphone / PPC category of this blog.
 |
Wednesday, November 24, 2004 |
From the abstract: Seth Fogie presents the latest in our series of security audio sessions. Mr Fogie discusses all the major security issues that are affecting Windows Mobile Pocket PC devices. Some of the topics covered include:
- Worms, trojans and backdoors
- Insecurities in wireless connectivity
- Denial of Service attacks
- Specific problems (ActiveSync, autorun SD/CF cards, buffer overflows)
- PDA device as an attack platform
- Tips on securing your PDAs.
The audio session is 13:58 minutes long (Flash required).
 |
Monday, November 22, 2004 |
The Windows Mobile section on microsoft.com has smartphone demos live (currently for the Orange SPV C500 [the one I own], the Motorola MPx220, as well as the Audiovox SMT 5600). No longer there is the need to rely on reviews by others, you can actually try the features.
 |
Saturday, November 13, 2004 |
InformationWeek's article has the details. The interesting bit in my view: The switch was not a surprise, given PalmSource's focus on supplying an OS for advanced cellular phones, called "smartphones," that contain many of the same features as PDAs, such as contact lists, personal calendars and email. Given my experience with the SPV C500 (a Microsoft SmartPhone), I don't think PalmSource's change of focus will help in the long run...
 |
Monday, November 8, 2004 |
I have been busy refactoring the Registry Editor, converting it from hack to architecture. As I plan to release the source code for it, I want it to be well-structured and easily extensible (I don't think I'll do editors for all registry data types). Can't wait for VS.NET 2005 where refactoring will be built in, though you can easily get ReSharper today. Online resources aside, the Refactoring dead-tree edition from Fowler should sit on every developer's bookshelf.
To close this post, one more screenshot of the Registry Editor in action - the menu:

Got bitten once again with gratitious help of VS.NET 2003: how does tab order work on the Compact Framework? Based on the order in which controls are added to the Controls collection in InitializeComponent - and guess what, VS.NET does this in reverse order, or the Forms Designer, to be more precise. Details in the section "Tab Order and Focus" in here.
 |
Saturday, November 6, 2004 |
What is the behavior of a tree view control? Well, it lets you expand the tree - but what should it do when you reach a leaf node? Right,
switch to List View mode where you can view and edit the values.
Download video (199.9 KB)
This turned out to be unnecessarily complicated - because I painted myself into a corner, sort of with the help of Visual Studio .NET 2003. When I added an image list, upon load I'd run into an exception of MissingManifestResourceException.
I thought wtf? I didn't do anything. Well, mostly nothing. I found the KB article BUG: "System.Resources.MissingManifestResourceException" error message after you change the name of a localized form class in Visual C++ .NET 2003 which was sort of helpful: I found the cause, but the remedy didn't work for SmartPhone applications... here's the lowdown: my main form had the class name RegistryEditorForm, the file name though was RegistryForm.cs (.resx is of course the same, automagically). So now the resource is compiled using the file name, and the class name is different - exception. Change the class name to be identical to the .resx file name - success.
But at least the list view looks now a lot nicer than before (note that in debug mode I display the data types instead of the value names):

 |
Friday, November 5, 2004 |
One more step completed - a bare-bones string value editor (yes, for both editing existing and adding new string values):

Now, the bad news is that the OpenNETCF.org Smart Device Framework won't cut the mustard for the editing part - I will have to resort to P/Invoke for getting at the value data types correctly. I knew that P/Invoke would rear its ugly head rather sooner than later. Anyways, nice learning project.
(1) Registry Editor for SmartPhone (2) Registry Editor for SmartPhone, List View
In addition to the tree view as reported earlier, I now also got the list view up running:

Note that pretty icons ("UI candy") are missing (eg folder or value data type), but getting functionality done is more interesting at the moment. When switching from tree view to list view, I already switch to the very same registry path, missing is path preservation on the switch back from list view to tree view.
I promised that I would write some SmartPhone applications now that I have an SPV C500 Developer Edition, and today I got around to installing the SDKs - and immediately got started with my very first Compact Framework application, a full-blown registry editor (now how nerdy is that for your first application?). The tree view is already done as shown in the emulator screenshot below:

List View and then editing support is next. Not too bad a result for playing for less than an hour, now is it?
 |
Wednesday, November 3, 2004 |
 |
Thursday, October 28, 2004 |
"Don't assume because it makes an ASS out of U and ME". Right, should've taken that to heart when I switched from a Nokia cell phone to my new SPV C500. What happened?
Well, on my Nokia it worked this way: calls on line one had call waiting notifications turned on. So when I was in a call, I was notified that a call was waiting to be picked up when someone else called. However, for line two, I hadn't activated it. So when I was in a call, the caller was routed to the voice mailbox immediately. When I wasn't in a call, the phone rang when someone called on line two.
Not so on the SPV C500: here, callers on line two are always (!) routed to the voice mailbox, no questions asked - unless you turn on "Provide call waiting notifications" on line two. Whoops. That was quite a nasty surprise because line two is the incoming line for business calls.
Speaking of snags: my Nokia provided indication of whether a call came in on line one or line two - the SPV C500 doesn't seem to have this functionality, or I haven't yet found how to activate it. If you, dear reader, happen to know, let me know.
 |
Monday, October 18, 2004 |
 |
It has been a rather long wait for this SPV C500 Developer Edition. However, got it up and running in next to no time (maybe reading manuals does help after all); but I won't have too much time to tinker with it this week - I'm heading to the Connect event in Barcelona tomorrow morning.
You can rest assured that some kind of self-crafted SmartPhone .NET application source code will tip up on this blog once I have accustomed myself with CF programming on the 'fone' (sooner than later). |
 |
Thursday, October 14, 2004 |
From the Download Site: The Mobile Application Development Toolkit provides all the resources you need to start building mobile applications for Smartphone and Pocket PC devices.
The kit includes:
- Windows Mobile Development Guided Tour
- QuickStarts
- Hands-on Labs
- Technical Articles
- Business Success Stories
- Information about Developer Tools and SDKs
- Software and Special Offers
 |
Tuesday, September 14, 2004 |
Found at msmobiles.com: This eBook may be useful for you if you would be interested in writing software for Microsoft Smartphone powered cell phones. It covers both native code (C++) and managed code (C#, Visual Basic .NET).
© Copyright 2023 Christoph Wille
newtelligence dasBlog 2.3.9074.18820  |
|