by Mister Goodcat
3. November 2011 18:42
Shortly after I got my Windows Phone I had the idea of creating an app that lets me remotely control my desktop computer. The reason for that was that lazy me needed to use a clumsy and error-prone full-size wireless keyboard and mouse when I wanted to surf the web from my couch, using the small media PC connected to my TV set. Wouldn't it be nicer to use the much more handy mobile phone as input device? Unfortunately the RTM version of Windows Phone was missing some networking features for that – using web services or http wasn't what I was looking for. The Mango release changed that, because TCP/UDP socket support was added to the platform. More...
by Mister Goodcat
27. October 2011 15:33
When you're developing an application or component that does some sort of background processing, you are often in need to dispatch messages back to the UI thread, for example to report progress to the user, to otherwise manipulate UI elements, or to execute any logic that is bound to the UI thread by platform limitations or similar circumstances. On Windows Phone, a simple way to do this is to use the globally accessible Deployment.Current.Dispatcher object that allows you to post messages to the UI thread. More flexible methods capture the current (dispatcher) synchronization context, if applicable, and use that to post messages, for example. No matter what method is used, there's a subtle problem with that which can come quite unexpected. I don't dare to call this a bug (yet); I think it is simply a side effect and logical consequence of how the application lifetime is handled on the phone, however if you're not prepared for it, it can cause a lot of confusion. More...
by Mister Goodcat
18. October 2011 07:24
Logging and Tracing on the phone is somewhat limited because your options of logging targets are. Popular targets like databases or the event log are not available at all or only work in the emulator (console), and others like log files are rather inconvenient, because your only option is to write to isolated storage. Luckily, all common logging frameworks offer additional options that can be used from Windows Phone too, in particular remote targets like writing to a web service. NLog introduced experimental support for Windows Phone back in January and finally included it in the official 2.0 release in July. Unfortunately, an important feature of logging to a web service is broken. Here is how to fix that. More...
by Mister Goodcat
10. October 2011 19:36
Do you want to become a Microsoft Certified Professional Developer on Windows Phone 7? Then you have to take two MCTS exams (for Silverlight 4 Development and Data Access with the .NET Framework 4.0) and a PRO exam named Designing and Developing Windows Phone Applications. As a preparation for this exam, I have created an article series over at Silverlight Show a while ago that covers all the skills that are being measured by this exam.
I'm proud to announce that the team of Silverlight Show has made it possible to offer these articles as e-book, available for download in various formats for all your favorite readers. Not only does this e-book contain my own articles on the exam and surrounding topics, but also the referenced articles in this series that have been written by other authors. I absolutely need to thank all those people for their permission to include their great articles – this project would not have been possible without them!
I have used the resources covered in this e-book to prepare myself for the exam, which I successfully took in July this year. If you are interested in learning more, you have the following options to obtain the book for a very moderate price tag of less than five US-$ here:
The e-book in the Silverlight Show e-book store (PDF, mobi, ePub formats)
The e-book on Amazon.com (Kindle format)
The e-book on Amazon.de (Kindle format)
I hope you enjoy this release and wish you all the best for your exam!
by Mister Goodcat
7. October 2011 21:57
To celebrate the fantastic "Mango" release for Windows Phone 7, I decided to grant a permanent discount of 50% for my on-demand trainings to all Windows Phone developers. Even better, if you have already bought a subscription in the month that the trainings are online now, I'm pleased to announce that you will receive a 50% refund of your payment automatically in the next hours!
But wait, there is more! Starting today, another part of the training series is made available for free. In the 70 minutes video number 16, you will learn about profiling on the phone and how to use this technique to analyze and improve the phone application that is built in the training, demonstrated on real hardware. I hope you enjoy this new part and the new price policy of the training. As always, feel free to drop me a note with any feedback or suggestions you have.
You can find the trainings and the new free video here: http://www.goodcat-trainings.net
by Mister Goodcat
1. October 2011 19:44
Update 2011-11-17: A recent update for HTC phones is confirmed to fix the issue for the Trophy (firmware 2250.21.51002.161), Mozart (firmware 2250.21.51007.401) and HD7. The last remaining phone model affected (that I know of) is the Dell Venue Pro.
When I connected the Samsung Omnia 7 I mainly use for development and testing to Zune today, I received a notification that (yet another) Samsung update was available. I had updated the device to Mango very early already, and received a firmware update back then, so this was kind of unexpected. After installing the update, the newly reported firmware version on the phone is 2424.11.8.5. Curious about what has changed with this update, I ran a few tests, and the most satisfying finding was that this update has fixed the UDP bug I have posted about a few days ago. But wait, there's more! More...
by Mister Goodcat
30. September 2011 08:42
I went through all of my previously published posts on Windows Phone 7.1 "Mango" to make sure they're still valid for the RTW version of the developer tools, and that the included source code still works with both the emulator as well as on devices updated to the final version of Windows Phone OS 7.5. The articles have been updated where necessary, and the "beta warning" has been removed. You can now be sure that everything described in these posts fully applies to the final version of "Mango".
by Mister Goodcat
22. September 2011 11:34
Update 2011-11-17: A recent update for HTC phones is confirmed to fix the issue for the Trophy (firmware 2250.21.51002.161), Mozart (firmware 2250.21.51007.401) and HD7. The last remaining phone model affected (that I know of) is the Dell Venue Pro.
Update 2011-10-01: A recent firmware update from Samsung fixes this bug for the Omnia 7! Read more on the topic here.
Update 2011-09-30: This article is compatible with the final version of Windows Phone 7.1 "Mango". All the findings here are (unfortunately) confirmed using the RTW version of the developer tools as well as real phone devices updated to the final version of Windows Phone OS 7.5.
UDP is a popular protocol in networking when you want to establish simple communication that does not require all packets to be reliably transmitted. The fact that with UDP (unlike with TCP) all packets are transferred individually somewhat simplifies the application level protocol and algorithms required to parse the data on the receiving end (you can find a post of mine about TCP on the phone with sample code here). And finally, UDP is perfect for time-sensitive applications that want to have a pseudo real-time communication without the need to wait for dropped or delayed packets to arrive or be resend. With the Mango release, UDP support was added to Windows Phone 7. Unfortunately, some of the fundamental benefits of UDP apparently are broken by the current implementation. More...
by Mister Goodcat
20. September 2011 23:16
A lot has been said and written about the features of the upcoming Mango update for Windows Phone 7.
One particularly interesting improvement to the tooling is the performance analysis feature addition of the built-in profiler, which you can read more about here on MSDN, or in my XNA series here. However, the platform had and still has a set of additional features that can become very helpful for monitoring application performance, sometimes in a way not possible with the profiler.
In this article I want to talk about three of these features and how to make use of them during development: frame rate counters, the possibility to visualize redraw regions, and finally cache visualization.
You can read the full article on Silverlight Show.
by Mister Goodcat
14. September 2011 16:40
This tutorial is fully compatible with Windows 8 Consumer Preview (released Feb 29th, 2012).
Minutes before I submitted my previous article that talks about installing Windows 8 in a virtual machine using VirtualBox, Scott Hanselman posted an article of his own about how he installed Windows 8 into a bootable VHD. This is a nice approach because it yields in much better performance. Only the hard disk is virtualized, not the rest of the hardware, so you benefit from the full power of your CPU and video card without creating a real dual boot setup or even upgrading your system completely. The drawback is that you have to boot into that Windows 8 VHD separately, whereas the installation with VirtualBox allows you to run Windows 8 within your existing system, and you can switch back and forth between both in the blink of an eye. More...
8813c42a-9093-49af-bdb8-fb08d329dc16|18|4.9|96d5b379-7e1d-4dac-a6ba-1e50db561b04
Tags: Windows 8, VHD
Tools