1 June 2009 0 Comments

Driver versions and API sets

I spent a big part of the weekend trying to get my own code to grab a still image from my web cam.  In the end I had a complete failure, then I realized I had fallen into a trap that could happen to others. The USB web cam driver that was originally published as being for CE 4.2, 5.0 and 6.0 uses a set of IOCTL commands to interface with it.  The USB cam driver for 6.0 is a DSHOW camera interface and the IOCTL commands will compile and run

1 June 2009 0 Comments

RunningJobContext.IsClientConnected

I’ve seen a few people get confused over what this error message in the Reporting Services log file indicates. This message is generated when the Reporting Services web server detects that an HTTP request has experienced a remote disconnect.  In practice, this means that we queried the property HttpResponse.IsClientConnected and it returned false. So how does this work exactly, and are all requests subject to this kind of check?

29 May 2009 0 Comments

Jennifer Marsman Blogs on Surface Development

For all you Surface Fans, my colleague Jennifer Marsman has written a series of blog posts about developing on Microsoft Surface: Surface Development Part 1: What is the Microsoft Surface?

28 May 2009 0 Comments

Project Server 2007: PWA Provisioning issue after February CU – Cannot insert duplicate key row

The full error is Cannot insert duplicate key row in object ‘dbo.Objects’ with unique index ‘IX_Objects_ClassId_ParentId_Name’, and this occurs when trying to provision a new PWA site in a farm.  Some background first, and then the workaround.  In the February CU we added a fix for the “waiting for resources” problems customers had run into when trying to provision new PWA sites.  This was caused by a missing timer job.  The fix checked for the timer job, and if it wasn’t found it was created – which for most of our customers was a perfect fix. However, for customers running multiple language versions (MUIs), or even just non US English versions it could fail to detect the timer job and think it was missing and try to re-create it – which led to the error! My colleague Aik had been working on this problem and had a couple of workarounds we’d shared with customers and these turned up back in my blog comments a couple of days ago (Thanks Jose!) – so I thought the time was right for a full posting.  So here are the workarounds – with option #1 being the favored one as it has the least impact on the users of the server: Option #1 – Delete sync jobs before provisioning site To delete a timer definition job, find the Job ID by going to the Sharepoint Central Administration site | Operations | Timer Job Definitions Look for the Project Server sync jobs and right click on the links and select Copy Link – the default names for the jobs (in English) will be something like Project Server Synchronizing job for ‘SharedServices1’. Paste the link into Notepad and the link will look something like this: :/_admin/JobEdit.aspx?JobId=57b935d4%2Db43f%2D4dc4%2Dbd9c%2Dc74bb000b9c6">http://<servername>:<Central Admin Port>/_admin/JobEdit.aspx?JobId=57b935d4%2Db43f%2D4dc4%2Dbd9c%2Dc74bb000b9c6 Copy out just the JobId section and replace the text "%2D" with a dash e.g – Once you are done your GUID should look like the following based on the example above: 57b935d4-b43f-4dc4-bd9c-c74bb000b9c6 Run the following command with the jobID

8 May 2009 0 Comments

Debug .NET Framework Source Code and loading SOS in Visual Studio

I found this blog post from Shawn Burke to be very useful. Comes in handy if you have to step through .NET source when debugging