« November 2007 | December 2007 Archives | January 2008 »

Bug in overlapped UDP port unreachable errors?

| 5 Comments
I'm currently fixing a bug in the UDP side of The Server Framework. The problem is that I'm failing to handle how Winsock reacts when an overlapped SendTo() results in an ICMP Port Unreachable response from the remote host. This error gets reported by failing a pending WSARecvFrom() on the same socket by returning 0 bytes from the WSARecvFrom() with an error code of ERROR_PORT_UNREACHABLE. This would be fine if the framework didn't assume that all errors from an overlapped WSARecvFrom should mean that we don't post another read... You may recall from when I was doing some work on making the…

Managed Excel addins

| 4 Comments
One of my current clients has got me drifting back towards my Investment Banking roots by developing an Excel addin for them. Luckily for me it's a banking client with a twist compared to my previous banking clients; they're happy for me to work as an external consultant, doing most of the work from my office at home and working on my contract terms. The development work so far has been quite interesting. I'm building a prototype XLL style Excel addin that allows worksheet functions to be developed in C#. There are commercial products out there that do this, but…

Reclaiming my CPU...

| 1 Comment
I removed the last version of "Norton Anti-Virus" (and all of the other stuff that I've been upgraded into over the years) from the last of my machines yesterday. I've replaced it with AVG, currently the free version to test it out. All of the machines feel more sprightly and run faster. One of my old laptops which is now only used for fire-side web browsing is now actually usable again! For a while now I've thought that what was originally just anti-virus software had been getting more and more bloated with more and more things that didn't interest me…
I picked up a book yesterday, Writing Secure Code for Windows Vista. Which seemed quite interesting, and was a nice slim volume that would slip into my hand luggage for my flight to Geneva on Friday night (yay first ski weekend of the season!). I've been flicking through it this evening and was interested in the "Standard Annotation Language" (SAL) for annotating unmanaged functions that muck around with memory buffers, it looked like a potentially easy adjustment to The Server Framework code which would possibly improve security and usability... Unfortunately it seems that SAL is only operational when you run with the…

Performance counter mismatch detection

| 0 Comments
One of the problems with iterative development of servers that include performance counters is that it's quite easy for the counters that are installed on a machine to get out of sync with the counters that the server is actually compiled to use. As development progresses and new counters are added the counter dll needs to be uninstalled and then reinstalled so that the text strings associated with the counters remain in sync. Before I rewrote my performance counter code it was reasonably easy to spot when this happened in a debug build, the server simply crashed... The problem was…

CruiseControl.Net

| 2 Comments
I'm currently working on two new releases of The Server Framework, the first is a simple release to add support for VS2008 and the second is the next "feature" release. Due to the number of projects and example servers and supported compilers that I test with it can take some time to finalise a release; each example server has to be checked out, built in each build configuration with each supported compiler and then the tests need to be run... Last time I did this I had planned to put aside some time to sort out an automatic build to do it…

Fighting with CruiseControl.Net...

| 5 Comments
I've been trying to get my code to build with CruiseControl.Net this week. It's taken longer than I'd hoped, but I'm almost there. It became easier when I switched from assuming various parts of CruiseControl.Net would "work as I expected them to" to assuming that I'd have to delve into the source and change things... On the whole I'm a bit disappointed in CruiseControl.Net. I'm sure it works very nicely for simple situations, such as where you pull everything out of your repository and build it with a single project, but, when you're trying to do more complex things it…
« November 2007 | December 2007 Archives | January 2008 »

About this Archive

This page is an archive of entries from December 2007 listed from newest to oldest.

November 2007 is the previous archive.

January 2008 is the next archive.

I usually write about C++ development on Windows platforms, but I often ramble on about other less technical stuff...

Find recent content on the main index or look in the archives to find all content.

I have other blogs...

Subscribe to feed The Server Framework - high performance server development
Subscribe to feed Lock Explorer - deadlock detection and multi-threaded performance tools
Subscribe to feed l'Hexapod - embedded electronics and robotics
Subscribe to feed MegèveSki - skiing