Windows Mobile 6 And Windows Mobile Device Center on Vista

Upgrading from Windows Mobile 5 to Windows Mobile 6 with Vista
 
Having successfully upgraded my i-mate JasJam from WM5 to WM6 I found that when I came to sync my device with my Vista laptop (32-bit Business Edition) the process would not succeed. It would say ‘Syncing’, but not actually perform any operations. Having installed version 6.1 of WMDC and successfully got it to sync with my WM5 device I was a little, but not entirely, surprised that it failed to synchronise.
 
Having double checked my Synchronisation settings and made sure my certificate was installed correctly I decided to reinstall the WMDC. Initially I just tried running the Repair option on the WMDC installation but that did not have any success so I completely removed the WMDC Driver Update and the WMDC itself. After rebooting the machine, just to make sure, I downloaded the latest version of the WMDC again and did a brand new install.
 
This solved my problem. The driver update installed successfully along with the WMDC and when I plugged my JasJam into the laptop the WMDC recognised, connected and sync’ed straight away. Open-mouthed

Reporting Services – SetExecutionParameters

Passing in Read-Only parameters to the Reporting Services Web Service
 
Just a quick one – I have recently been generating dynamic RDL’s and then using the Reporting Services Web Service to load and render the reports. One little headache I did have was defining the parameters for the reports using the SetExecutionParameters method. One of my parameters is read-only and as such when I tried to pass it to the report I got a nice error back informing me of this.
 
I spent some time looking around to determine how I pass a read only parameter to a report without any luck. Then it dawned on me . . . just don’t add the parameter to the prameter array . . . and make sure you reduce the array size by one. So my code now loooks like this;
 
    ReportExecutionWS.ParameterValue[] parameters = new ReportExecutionWS.ParameterValue[3];
    parameters[0] = new ReportExecutionWS.ParameterValue();
    parameters[0].Name = "Version";
    parameters[0].Value = "1.0.0";
    parameters[1] = new ReportExecutionWS.ParameterValue();
    parameters[1].Name = "ReportDate";
    parameters[1].Value = System.DateTime.Now.AddHours(-6).ToString();
    parameters[2] = new ReportExecutionWS.ParameterValue();
    parameters[2].Name = "Resolution";
    parameters[2].Value = "180";
    // We dont need to pass read-only parameters!!!
    //parameters[3] = new ReportExecutionWS.ParameterValue();
    //parameters[3].Name = "ParentId";
    //parameters[3].Value = string.Empty;